小编Dav*_*man的帖子

WPF DataGrid:重新排序行?

我正在创建一个WPF数据网格,我希望能够通过拖放重新排序行,如下所示:我单击一行并向上或向下拖动它.像我一样,如果我释放鼠标,标记会显示行将被丢弃的位置.当我释放鼠标时,拖动的行将插入标记指示的位置.

有没有人看到任何文章或博客文章,说明如何做到这一点?如果我不需要,我不想重新发明轮子,谷歌也没有发现任何东西.谢谢.

.net wpf datagrid drag-and-drop wpfdatagrid

14
推荐指数
2
解决办法
1万
查看次数

使用资源设置窗口背景颜色

我需要使用资源来设置WPF应用程序中主窗口的颜色.由于资源声明在窗口声明之后(我导入资源字典),我不能BackgroundWindow对象中使用属性.所以,我想我会这样设置背景:

<Window.Resources>
...
</Window.Resources>

<Window.Background>
    <SolidColorBrush Color="{StaticResource WindowBackgroundBrush}"  />
</Window.Background>
Run Code Online (Sandbox Code Playgroud)

我的语法有点偏,因为该对象不会为其Color属性获取画笔资源.有什么问题?谢谢你的帮助.

wpf resources background window colors

14
推荐指数
2
解决办法
3万
查看次数

使用SelectionMode = Multiple数据绑定ListBox

我有一个ListBox我想要的WPF

  • ListBox和中启用多项选择
  • 将ListBox数据绑定到我的视图模型.

这两个要求似乎不相容.我的视图模型有一个ObservableCollection<T>绑定到此ListBox 的属性; 我在XAML中设置了从属性到ListBox.SelectedItems属性的绑定.当我编译时,我得到一个错误,说该SelectedItems属性是只读的,无法从XAML设置.

我绑定到错误的控制属性?有没有办法将XAML中的多选ListBox绑定到视图模型集合属性?谢谢你的帮助.

data-binding wpf listbox

13
推荐指数
2
解决办法
1万
查看次数

例外:'IValueConverter'类型没有公共TypeConverter类

我刚刚在我实现的IValueConverter上遇到了这个异常:

IValueConverter类型没有公共TypeConverter类

还有其他人遇到过这个吗?是什么原因,我该如何解决?谢谢.

wpf ivalueconverter

12
推荐指数
1
解决办法
7486
查看次数

设置WPF自定义控件的属性类别?

在WinForms中,我可以将[Category]属性添加到自定义控件属性,以指定应包含属性的属性类别.我如何在WPF中做到这一点?谢谢

wpf custom-controls wpf-controls

10
推荐指数
1
解决办法
4376
查看次数

如何抓取WPF 4.0控件默认模板?

我一直在使用Expression Blend来复制WPF 4.0控件的默认模板.我正在编写一篇关于扩展WPF控件的CodeProject文章,我想推荐一个免费工具作为替代方案.你会建议什么?谢谢你的帮助.

wpf wpf-controls

10
推荐指数
2
解决办法
3999
查看次数

Logism 4 ILoggerFacade for Log4Net?

我正在从Prism 2.1转换为Prism 4,我需要为Log4Net编写一个ILoggerFacade类.我从Prism 2.1获取的旧代码不再有效.有没有人有他们愿意分享的ILoggerFacade类的示例代码?谢谢你的帮助.

log4net prism prism-4

10
推荐指数
1
解决办法
9730
查看次数

实体框架4和WPF

我正在编写一个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)

wpf entity-framework mvvm entity-framework-4

10
推荐指数
1
解决办法
6212
查看次数

XAML:获取父级背景

我需要在XAML中将控件的背景设置为父背景的颜色.为什么不简单地让背景透明?这是一个带阴影的按钮,所以我需要设置背景; 否则,投影会显示出来.

因此,从我的控件的标记,如何设置Background属性等于父(主机)背景是什么?谢谢你的帮助.

wpf xaml

9
推荐指数
2
解决办法
1万
查看次数

WPF:集合依赖项属性"是只读的,不能从标记设置"

我正在创建一个用户控件来显示一个三个月的日历.该控件基于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 dependency-properties readonly wpf-controls

9
推荐指数
1
解决办法
3210
查看次数