C# Silverlight:列表框中的分隔符?
我有一个列表框,里面有几个项目。我想以编程方式在列表框中插入分隔条。这可能吗 MSDN提到了一个控件,但当我尝试实例化一个控件时,VisualStudio无法识别它C# Silverlight:列表框中的分隔符?,c#,silverlight,C#,Silverlight,我有一个列表框,里面有几个项目。我想以编程方式在列表框中插入分隔条。这可能吗 MSDN提到了一个控件,但当我尝试实例化一个控件时,VisualStudio无法识别它 我使用的是Silverlight 4。您提到的分隔符控件在WPF中,从我在文档中看到的内容来看,Silverlight不支持它 我会通过模板处理这个问题。使用项的表示形式和分隔符的第二种表示形式设置模板,然后将每个表示形式的可见性绑定到数据对象上的IsSeparator标志 然后,您所需要做的就是将IsSeparator标志设置为t
我使用的是Silverlight 4。您提到的分隔符控件在WPF中,从我在文档中看到的内容来看,Silverlight不支持它 我会通过模板处理这个问题。使用项的表示形式和分隔符的第二种表示形式设置模板,然后将每个表示形式的可见性绑定到数据对象上的IsSeparator标志
然后,您所需要做的就是将IsSeparator标志设置为true来创建一个虚拟对象,以获取列表中的新项。您所指的分隔符控件在WPF中,从我在文档中看到的Silverlight中不受支持 我会通过模板处理这个问题。使用项的表示形式和分隔符的第二种表示形式设置模板,然后将每个表示形式的可见性绑定到数据对象上的IsSeparator标志 然后,您需要做的就是将IsSeparator标志设置为true,创建一个虚拟对象,以获取列表中的新项。请参阅: 我在silverlight 4中使用它,我只需从工具箱中拖放,它为我添加了对工具箱的引用:
xmlns:toolkit="http://schemas.microsoft.com/winfx/2006/xaml/presentation/toolkit"
我是这样用的:
<toolkit:Separator Margin="15"/>
请参见:
我在silverlight 4中使用它,我只需从工具箱中拖放,它为我添加了对工具箱的引用:
xmlns:toolkit="http://schemas.microsoft.com/winfx/2006/xaml/presentation/toolkit"
我是这样用的:
<toolkit:Separator Margin="15"/>
我做了一个类似于詹姆斯的修复。在绑定listbox的TableModel上添加布尔字段 我对按类型分组的数据有一个额外的要求,我将其保留在下面的LINQ查询中。如果不需要,可以使用allData.Count代替numDataTypes。我的布尔值名为IsLastItem,并填充有:
int numDataTypes = allData.Select(o => o.Type).Distinct().Count();
IEnumerable<TableModel> ByTypes = allData
.GroupBy(o => o.Type)
.Select((g, index) => new TableModel()
{
...
IsLastItem = index == (numDataTypes - 1),
});
int numDataTypes=allData.Select(o=>o.Type).Distinct().Count();
IEnumerable ByTypes=allData
.GroupBy(o=>o.Type)
.选择((g,索引)=>new TableModel()
{
...
IsLastItem=index==(numDataTypes-1),
});
然后在ListBox(或ItemsControl)中,我使用了一个布尔值到可见性的转换器(类似于此处发布的转换器):
...
我做了一个类似于詹姆斯的修复。在绑定listbox的TableModel上添加布尔字段
我对按类型分组的数据有一个额外的要求,我将其保留在下面的LINQ查询中。如果不需要,可以使用allData.Count代替numDataTypes。我的布尔值名为IsLastItem,并填充有:
int numDataTypes = allData.Select(o => o.Type).Distinct().Count();
IEnumerable<TableModel> ByTypes = allData
.GroupBy(o => o.Type)
.Select((g, index) => new TableModel()
{
...
IsLastItem = index == (numDataTypes - 1),
});
int numDataTypes=allData.Select(o=>o.Type).Distinct().Count();
IEnumerable ByTypes=allData
.GroupBy(o=>o.Type)
.选择((g,索引)=>new TableModel()
{
...
IsLastItem=index==(numDataTypes-1),
});
然后在ListBox(或ItemsControl)中,我使用了一个布尔值到可见性的转换器(类似于此处发布的转换器):
...