小编aal*_*675的帖子

在WPF TreeView中对子对象进行分组

我试图让我的树视图按照它们是什么来组合类似项目的集合.为了保持通用性,我的对象层次结构可能如下所示:

  • 对象
    • 对象组#1
      • 项目#1(类型'A')
      • 项目#2(类型'A')
      • 项目#3(类型'B')
      • 项目#4(类型'B')

现在我的TreeView显示这些对象与对象模型完全一样,但我想要做的是为每个对象类型插入一个TreeView节点,使它看起来像这样:

  • 对象
    • 对象组#1
      • A型
        • 项目#1
        • 项目#2
      • B型
        • 项目#3
        • 项目#4

我在这里看到一个类似的问题,有人建议有两个单独的,HierarchicalDataTemplates所以我创建了一个'对象组#1'级别,其中包含一个带有类型列表的TreeView,但这真是笨拙,因为它是一个完整的单独的TreeView里面一些节点.我也一直在尝试使用a CollectionViewSource来过滤掉每个类别中的项目,但这对我来说并不是很好,因为我无法弄清楚如何显示它们.

我想我的问题归结为:我如何组成一个HierarchicalDataTemplate小组呢?如果有人能指出我正确的方向,我会非常感激.

我可以发布一些代码,如果有人想看,但我真的只是想弄清楚如何做我想要的,所以我的代码现在只是一个非常直接的数据绑定树视图.

c# wpf treeview xaml hierarchicaldatatemplate

7
推荐指数
2
解决办法
9971
查看次数

WPF DataGrid ComboBox导致InvalidOperationException

当我尝试编辑组合框列的值时,我从我的数据网格获得InvalidOperationException(在AddNew或EditItem事务期间不允许"DeferRefresh").我显示的项目都引用了同一列表中的另一个项目,所以这就是我使用组合框的内容.它与datagrid绑定到同一个集合.我正在处理的应用程序是针对.NET 3.5,但是我已经在.NET 4中组建了一个完全相同的示例,因为数据网格是内置的.以下是datagrid中项目的代码:

public class TestItem : INotifyPropertyChanged
{
    public event PropertyChangedEventHandler PropertyChanged;
    private void RaisePropertyChanged(string propertyName)
    {
        if (PropertyChanged != null)
        {
            PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
        }
    }

    private int m_ID;
    private string m_Name;
    private int m_OppositeID;

    public int ID
    {
        get { return m_ID; }
        set
        {
            m_ID = value;
            RaisePropertyChanged("ID");
        }
    }
    public string Name
    {
        get { return m_Name; }
        set
        {
            m_Name = value;
            RaisePropertyChanged("Name");
        }
    }
    public int OppositeID
    {
        get { return m_OppositeID; } …
Run Code Online (Sandbox Code Playgroud)

wpf datagrid combobox invalidoperationexception

6
推荐指数
1
解决办法
3062
查看次数

默认的RenderTransform转换器语法

我有一个像这样应用RenderTransform的画布:

<Canvas RenderTransform="0.1,0,0,-0.1,0,913">
Run Code Online (Sandbox Code Playgroud)

谁能告诉我这些价值观是什么意思?我似乎无法找到用于解析这些值的转换器.

wpf xaml converter rendertransform

4
推荐指数
1
解决办法
946
查看次数