首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在后台代码中绑定到XMLDataProvider

在后台代码中绑定到XMLDataProvider
EN

Stack Overflow用户
提问于 2010-06-09 15:26:34
回答 1查看 3.8K关注 0票数 1

我在将带有XPath的XMLDataprovider绑定从Xaml迁移到代码隐藏时遇到了问题。

Labels.xml

代码语言:javascript
复制
<?xml version="1.0" encoding="utf-8" ?>
<Labels>
  <btnOne Label="Button1"/>
  <btnTwo Label="Button2"/>
</Labels>

MainWindow.xaml

代码语言:javascript
复制
<Window
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
     xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" mc:Ignorable="d" x:Class="bindings.MainWindow"
        Title="MainWindow" Height="350" Width="525">
    <Window.Resources>
        <XmlDataProvider x:Key="XMLLabels" Source="Labels.xml" XPath="Labels"/>
    </Window.Resources>
    <Grid>
        <Button Content="{Binding Source={StaticResource XMLLabels}, XPath=btnOne/@Label}" Height="23" HorizontalAlignment="Left" Margin="12,12,0,276" Name="btnOne" Width="75" />
        <Button Content="Button" Height="23" HorizontalAlignment="Left" Margin="93,12,0,276" Name="btnTwo" Width="75" Loaded="btnTwo_Loaded" />       
    </Grid>
</Window> 

MainWindow.xaml.cs

代码语言:javascript
复制
...
private void btnTwo_Loaded(object sender, RoutedEventArgs e)
{
    String Type = sender.GetType().Name;
    if (Type == "Button")
    {
        Button btn = sender as Button;
        Binding label = new Binding("XMLBind");
        XmlDataProvider xmlLabels = (XmlDataProvider)this.FindResource("XMLLabels");
        label.Source = xmlLabels;
        label.XPath = "btnTwo/@Header";
        btn.SetBinding(Button.ContentProperty, label);
    }
}
...

绑定到btnOne内容的工作方式为方面"Button1“。但是btnTwo被设置为空字符串。输出未显示任何错误。

谢谢你的建议。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-06-09 18:50:42

不应该

代码语言:javascript
复制
label.XPath = "btnTwo/@Header";

be

代码语言:javascript
复制
label.XPath = "btnTwo/@Label";
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3003815

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档