简体   繁体   English

为什么数据未绑定到我的 WPF 应用程序中的标签

[英]Why data is not bound to label in my WPF application

I am doing a simple DataBinding application in WPF .我正在WPF做一个简单的DataBinding应用程序。 In this app whatever I type in a TextBox named txtName , should appear in the Label .在这个应用程序中,无论我在名为txtNameTextBox输入什么,都应该出现在Label For this purpose I used binding in WPF , but its not getting bound.为此,我在WPF使用了绑定,但它没有被绑定。

<Grid>
    <Grid.ColumnDefinitions>
        <ColumnDefinition Width="315*" />
        <ColumnDefinition Width="188*" />
    </Grid.ColumnDefinitions>

    <TextBox Height="23" HorizontalAlignment="Left"
             Margin="79,12,0,0" Name="txtName"
             VerticalAlignment="Top" Width="120" />
    <Label Height="28" HorizontalAlignment="Left"
             Margin="22,12,0,0" Name="label1"
             VerticalAlignment="Top" Width="42"
             Content="Name"/>
    <TextBox Height="23" HorizontalAlignment="Left"
             Margin="79,56,0,0" Name="txtSirName"
             VerticalAlignment="Top" Width="120" />
    <Label Content="SirName" Height="28"
           HorizontalAlignment="Left" Margin="12,56,0,0"
           Name="label2" VerticalAlignment="Top" Width="52" />
    
    <!-- Following is the label which I bound -->

    <Label Content="{Binding ElementName=txtName,Path=text}"
           Height="28" HorizontalAlignment="Left" Margin="47,112,0,0"
           Name="label3" VerticalAlignment="Top" Width="171" />
</Grid>

I am new to WPF .我是WPF新手。 Please guide me.请指导我。

Pretty sure XAML is case sensitive.很确定 XAML 区分大小写。 Your binding path is text when it should be Text .您的绑定路径是text ,而它应该是Text

TextBox has property Text, not text. TextBox具有属性 Text,而不是文本。 Small mistake :)小错误:)


 <Grid>
    <Grid.ColumnDefinitions>
        <ColumnDefinition Width="315*"/>
        <ColumnDefinition Width="188*"/>
    </Grid.ColumnDefinitions>
    <TextBox Height="23" HorizontalAlignment="Left"
             Margin="79,12,0,0" Name="txtName"
             VerticalAlignment="Top" Width="120"/>
    <Label Height="28" HorizontalAlignment="Left"
           Margin="22,12,0,0" Name="label1" VerticalAlignment="Top"
           Width="42" Content="Name"/>
    <TextBox Height="23" HorizontalAlignment="Left"
             Margin="79,56,0,0" Name="txtSirName"
             VerticalAlignment="Top" Width="120" />
    <Label Content="SirName" Height="28" HorizontalAlignment="Left"
           Margin="12,56,0,0" Name="label2" VerticalAlignment="Top"
           Width="52" />
    <Label Content="{Binding ElementName=txtName,Path=Text}"
           Height="28" HorizontalAlignment="Left" Margin="47,112,0,0"
           Name="label3" VerticalAlignment="Top" Width="171" />
</Grid>

Path= *T *ext路径= *T *ext

It's a typo problem.这是一个错字问题。

尝试这个

<Label Content="{Binding Source={x:Reference txtName}, Path=text}" Height="28" HorizontalAlignment="Left" Margin="47,112,0,0" Name="label3" VerticalAlignment="Top" Width="171" />

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

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