iAt*_*_it 6 c# wpf visual-studio-2010
MyData
是一个简单存储ColorName
属性的类.
在XAML中,我可以为我的XAML datacontext创建一个实例
<c:MyData x:Key="myDataSource">
Run Code Online (Sandbox Code Playgroud)
现在,
如何在我的代码后面访问和更改存储在MyData实例中的ColorName(在XAML中使用"myDataSource"键创建)?
我希望这个问题很清楚.我想以编程方式更改颜色.如何获取MyData类实例?谢谢
<DockPanel
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:c="clr-namespace:SDKSample">
<DockPanel.Resources>
<c:MyData x:Key="myDataSource"/>
</DockPanel.Resources>
<DockPanel.DataContext>
<Binding Source="{StaticResource myDataSource}"/>
</DockPanel.DataContext>
<Button Background="{Binding Path=ColorName}"
Width="150" Height="30">I am bound to be RED!</Button>
</DockPanel>
Run Code Online (Sandbox Code Playgroud)
Ari*_*edi 14
要从代码隐藏中访问资源,请提供DockPanel
一个名称,然后:
var resource = dockPanel.Resources["myDataSource"];
Run Code Online (Sandbox Code Playgroud)
或者,您可以获取其DataContext:
var dataContext = dockPanel.DataContext as MyData
Run Code Online (Sandbox Code Playgroud)