Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/silverlight/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/xslt/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何向DataGridRowGroupHeader添加其他数据?_C#_Silverlight_Datagrid_Silverlight 3.0 - Fatal编程技术网

C# 如何向DataGridRowGroupHeader添加其他数据?

C# 如何向DataGridRowGroupHeader添加其他数据?,c#,silverlight,datagrid,silverlight-3.0,C#,Silverlight,Datagrid,Silverlight 3.0,我有一个DataGrid,它通过带有一个组定义的PagedCollectionView显示一些数据。我为相应的DataGridRowGroupHeader创建了样式,在该样式下我添加了一个ControlTemplate,其中包含一个额外的TextBlock和一个间距矩形。我希望将这些控件的宽度绑定到特定列的宽度,但我正在努力使其正常工作。我还想将TextBlock的Text属性绑定到一个值 我尝试通过参考资料中矩形的Width属性绑定宽度,但没有成功(可能是因为矩形从未绘制,因此没有计算其布局)

我有一个
DataGrid
,它通过带有一个组定义的
PagedCollectionView
显示一些数据。我为相应的
DataGridRowGroupHeader
创建了
样式
,在该样式下我添加了一个
ControlTemplate
,其中包含一个额外的
TextBlock
和一个间距
矩形
。我希望将这些控件的宽度绑定到特定列的宽度,但我正在努力使其正常工作。我还想将
TextBlock
Text
属性绑定到一个值

我尝试通过参考资料中
矩形
Width
属性绑定宽度,但没有成功(可能是因为
矩形
从未绘制,因此没有计算其布局)


但是,我相信这两组绑定都可以通过使用一个或多个
ValueConverter
实现来执行,但是我想知道是否有更好的方法。通过定义
ControlTemplate
,可以实现这一点吗?

经过一些尝试和错误,我能够自定义行组标题。解锁解决方案的关键涉及
RowGroupHeaderStyles
属性和
DataGrid
上的
LoadingRowGroup
事件

通过为组定义一个或多个样式,我能够自定义控件模板以包含其他命名元素。然后,我使用事件来访问这些元素,并设置或绑定相关值以显示所需的信息。我遇到的唯一障碍是绑定控件的大小,我最终通过保存对每一行的引用并在需要刷新控件时设置这些大小来解决,而不是依赖绑定。这可能是特定于我的项目,因此您的里程数可能会有所不同

更新

询问如何让控件在
LoadingRowGroup
事件处理程序中执行绑定等。您可以从事件参数的
DataGridRowGroupHeaderEventArgs.RowGroupHeader
属性获取行标题,然后使用获取标题的子控件。一旦有了这些控件,就可以像绑定任何其他控件一样在代码中绑定它们。

最初由JDM询问:Jeff,如何访问这些元素(例如ToogleButton或Textblock),并设置或绑定相关值以显示所需信息,在LoadingRowGroup事件中?如何获取LoadingRowGroup中的header属性值。请输入您的代码。@HukmChand:很抱歉,我写的信息不正确。我已经改正了。