繁体   English   中英

Silverlight Datagrid标头绑定到常量

[英]Silverlight datagrid header binding to constant

假设我的代码后面有一堆局部常量,想用作标题,例如:

const string TYPE_HEADER = "Type";
const string LOCATION_ HEADER = "Location";

等等

有什么方法可以将DataGridColumns的标题绑定到这些绑定到本地方法的事件,例如:

<data:DataGridTextColumn Header="{Binding TYPE_HEADER}" />

能做到吗? 也许通过使用一些动态的ResourceDictionary之类的东西?

TYPE_HEADER必须是字符串属性(可以由const支持)。 制作一个容器:

public class MyStaticDataProvider
{
public string TYPE_HEADER { get { return "blkajsd"; } }
}

在用户控件的声明下方:

<UserControl.Resources>
<ResourceDictionary>
 <MyNamespace:MyStaticDataProvider x:Key="NameProvider" />
</ResourceDictionary>
</UserContro.Resources>

为您的标题:

Header="{Binding Path=TYPE_HEADER, Source={StaticResource NameProvider}, Mode=OneTime}"

如果Silverlight支持x:Static会更容易,但是不支持。 请参见Silverlight 4等效于WPF“ x:static”

似乎如果不编辑DataGridTextColumn的控件模板就无法完成此操作,因为Header不是FrameworkElement ...

动态设置Silverlight DataGrid列的标题文本

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM