我正在创建一个WPF数据网格,我希望能够通过拖放重新排序行,如下所示:我单击一行并向上或向下拖动它.像我一样,如果我释放鼠标,标记会显示行将被丢弃的位置.当我释放鼠标时,拖动的行将插入标记指示的位置.
有没有人看到任何文章或博客文章,说明如何做到这一点?如果我不需要,我不想重新发明轮子,谷歌也没有发现任何东西.谢谢.
我需要使用资源来设置WPF应用程序中主窗口的颜色.由于资源声明在窗口声明之后(我导入资源字典),我不能Background在Window对象中使用属性.所以,我想我会这样设置背景:
<Window.Resources>
...
</Window.Resources>
<Window.Background>
<SolidColorBrush Color="{StaticResource WindowBackgroundBrush}" />
</Window.Background>
Run Code Online (Sandbox Code Playgroud)
我的语法有点偏,因为该对象不会为其Color属性获取画笔资源.有什么问题?谢谢你的帮助.
我有一个ListBox我想要的WPF
ListBox和中启用多项选择这两个要求似乎不相容.我的视图模型有一个ObservableCollection<T>绑定到此ListBox 的属性; 我在XAML中设置了从属性到ListBox.SelectedItems属性的绑定.当我编译时,我得到一个错误,说该SelectedItems属性是只读的,无法从XAML设置.
我绑定到错误的控制属性?有没有办法将XAML中的多选ListBox绑定到视图模型集合属性?谢谢你的帮助.
我刚刚在我实现的IValueConverter上遇到了这个异常:
IValueConverter类型没有公共TypeConverter类
还有其他人遇到过这个吗?是什么原因,我该如何解决?谢谢.
在WinForms中,我可以将[Category]属性添加到自定义控件属性,以指定应包含属性的属性类别.我如何在WPF中做到这一点?谢谢
我一直在使用Expression Blend来复制WPF 4.0控件的默认模板.我正在编写一篇关于扩展WPF控件的CodeProject文章,我想推荐一个免费工具作为替代方案.你会建议什么?谢谢你的帮助.
我正在从Prism 2.1转换为Prism 4,我需要为Log4Net编写一个ILoggerFacade类.我从Prism 2.1获取的旧代码不再有效.有没有人有他们愿意分享的ILoggerFacade类的示例代码?谢谢你的帮助.
我正在编写一个WPF应用程序,使用带有Entity Framework 4的MVVM设计作为ORM.我的视图模型中有集合属性,它将包含从EF4返回的实体集合作为IEnumerable<T>集合,以响应从业务层提交的查询.
我原本希望简单地将IEnumerable<T>结果集包装成一个ObservableCollection<T>.但是,我发现自己在我的存储库中编写了更改跟踪代码,或维护了已更改对象的阴影集合,只是为了使视图模型和持久层保持同步.每次在视图模型中将实体添加到集合时,我都必须转到我的存储库以将其添加到EF4 ObjectSet.我不得不做同样的更新和删除.
为简化起见,我EdmObservableCollection<T>从CodePlex上的WPF应用程序框架项目(http://waf.codeplex.com/)借用了一个类.该类ObservableCollection<T>使用对EF4的引用进行包装ObjectContext,以便在更新集合时更新OC.我已经转载了EdmObservableCollection下面的课程.该类工作得很好,但它有一点代码味道,因为我最终在我的视图模型中引用了EF4.
这是我的问题:在WPF应用程序中,保持EF4实体集合与其对象上下文同步的常用方法是什么?EdmObservableCollection是一种合适的方法,还是有更好的方法?我错过了使用EF4的基本功能吗?谢谢你的帮助.
using System;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Data.Objects;
using System.Linq;
namespace Ef4Sqlce4Demo.ViewModel.BaseClasses
{
/// <summary>
/// An ObservableCollection for Entity Framework 4 entity collections.
/// </summary>
/// <typeparam name="T">The type of EF4 entity served.</typeparam>
/// <remarks>Developed from WPF Application Framework (WAF) http://waf.codeplex.com/</remarks>
public class EdmObservableCollection<T> : ObservableCollection<T>
{
#region Fields
// Member variables
private readonly string m_EntitySetName; …Run Code Online (Sandbox Code Playgroud) 我需要在XAML中将控件的背景设置为父背景的颜色.为什么不简单地让背景透明?这是一个带阴影的按钮,所以我需要设置背景; 否则,投影会显示出来.
因此,从我的控件的标记,如何设置Background属性等于父(主机)背景是什么?谢谢你的帮助.
我正在创建一个用户控件来显示一个三个月的日历.该控件基于WPF日历控件(WPF Toolkit 2009-06),我想将几个Calendar的属性传递给我的用户控件的相应属性.用户控件属性设置为依赖项属性,其基础类型与日历属性的类型匹配.这是我的标记:
<StackPanel>
<toolkit:Calendar Name="MasterCalendar"
SelectionMode="{Binding Path=SelectionMode, Mode=OneWay}"
SelectedDate="{Binding Path=SelectedDate, Mode=OneWayToSource}"
SelectedDates="{Binding Path=SelectedDates, Mode=OneWayToSource}"/>
<toolkit:Calendar Name="SlaveCalendar1"
DisplayDate="{Binding DisplayDate, Converter={StaticResource IncrementalMonthConverter}, ElementName=MasterCalendar, Mode=OneWay}"
SelectionMode="{Binding Path=SelectionMode, Mode=OneWay}"
SelectedDate="{Binding Path=SelectedDate, Mode=OneWayToSource}"
SelectedDates="{Binding Path=SelectedDates, Mode=OneWayToSource}"/>
<toolkit:Calendar Name="SlaveCalendar2"
DisplayDate="{Binding DisplayDate, Converter={StaticResource IncrementalMonthConverter}, ElementName=SlaveCalendar1, Mode=OneWay}"
SelectionMode="{Binding Path=SelectionMode, Mode=OneWay}"
SelectedDate="{Binding Path=SelectedDate, Mode=OneWayToSource}"
SelectedDates="{Binding Path=SelectedDates, Mode=OneWayToSource}"/>
</StackPanel>
Run Code Online (Sandbox Code Playgroud)
除SelectedDates属性外,所有属性绑定都没有问题.我的绑定出现以下错误:
'SelectedDates'属性是只读的,不能通过标记设置.
我怀疑是因为该SelectedDates属性是一个集合,但我不知道如何解决这个问题.任何人都可以启发我的问题的原因,并建议修复?谢谢你的帮助.
wpf ×9
wpf-controls ×3
.net ×1
background ×1
colors ×1
data-binding ×1
datagrid ×1
listbox ×1
log4net ×1
mvvm ×1
prism ×1
prism-4 ×1
readonly ×1
resources ×1
window ×1
wpfdatagrid ×1
xaml ×1