我可以在属性网格中添加多维属性列表

时间:2012-07-06 12:38:22

标签: c# wpf

我想设置一个多维列表。作为参考,我使用属性网格创建控件以更改其属性。

我正在动态添加控件。例如,我正在动态添加示例no.of堆栈面板。在堆栈面板中,我添加了no.of元素,例如带有属性网格的文本框控件。

如果我在1个堆栈面板中添加所有文本框意味着我可以使用List,我可以根据索引获取它。但我想在考虑堆栈面板的同时添加属性。

以下是我要添加的数据:

List
(
 [0] => List
  (
    ([0] => List
     (
       [0] => FillColor
       [1] => BorderColor
       [2] => BorderWidth
       [3] => Text
       [4] => FontSize
       [5] => FontFamily
      )
   )
[1] => List
    (
 And so on....

我可以根据以下内容获取文本框属性集合。

internal class PropertiesCollection : List<textBoxPropertiesProperties>
{
}

internal class textBoxProperties
{
}

PropertiesCollection collection = new PropertiesCollection ();
textBoxProperties properties=new textBoxProperties();
collection.Add(textBoxProperties);

textBox1 properties---> collection[0]
textBox2 properties ....> collection[1]

但是我想根据放置的堆栈面板得到它。 我需要像

这样的东西
textBoxProperties[stackpanel1][textbox1]
textBoxProperties[stackpanel1][textbox2]
textBoxProperties[stackpanel2][textbox1]
textBoxProperties[stackpanel2][textbox2].

我怎么能得到这个?

1 个答案:

答案 0 :(得分:0)

您可以在WPF中使用内置树结构,而不是创建自己的层次结构 - 查找VisualTreeHelper类或查看此文章:http://www.codeproject.com/Articles/21495/Understanding-the-Visual-Tree-and-Logical-Tree-in