簡體   English   中英

訪問數據模板中元素的屬性

[英]Accessing Properties of elements in a Data Template

如何從c#中訪問以下XAML代碼中的Textblock(txtlink)屬性? 引用txtlink。 不起作用,它會導致錯誤

txtlink名稱在當前上下文中不存在

        <Grid Grid.Row="1">
        <ListBox  ItemsSource="{Binding CurrentRss.Channel.NewsItems}">
            <ListBox.ItemTemplate>
                <DataTemplate>
                    <Grid>
                        <Grid.ColumnDefinitions>
                            <ColumnDefinition Width="80"/>
                            <ColumnDefinition Width="*"/>
                        </Grid.ColumnDefinitions>

                        <Button Style="{StaticResource ImageButtonStyle}" Click="Button_Click" >
                            <Image Source="{Binding Image}"/>
                        </Button>
                        <TextBlock Grid.Column="1" Text="{Binding Title}"/>

                        <TextBlock x:Name="txtlink"  Text="{Binding Link}" Background="Black" Foreground="#FFD1DA0B"/>

                    </Grid>
                </DataTemplate>
            </ListBox.ItemTemplate>
        </ListBox>
    </Grid>

使用SelectedItem綁定,那么您將有權訪問所選項目。 從那里您可以訪問Link屬性。
xaml:

<ListBox  ItemsSource="{Binding CurrentRss.Channel.NewsItems}" SelectedItem="{Binding SelectedNewsItem}">
        <ListBox.ItemTemplate>
            <DataTemplate>
                <Grid>
                    <Grid.ColumnDefinitions>
                        <ColumnDefinition Width="80"/>
                        <ColumnDefinition Width="*"/>
                    </Grid.ColumnDefinitions>

                    <Button Style="{StaticResource ImageButtonStyle}" Click="Button_Click" >
                        <Image Source="{Binding Image}"/>
                    </Button>
                    <TextBlock Grid.Column="1" Text="{Binding Title}"/>

                    <TextBlock x:Name="txtlink"  Text="{Binding Link}" Background="Black" Foreground="#FFD1DA0B"/>

                </Grid>
            </DataTemplate>
        </ListBox.ItemTemplate>
    </ListBox>  

並在您的ViewModel中:

public NewsItem SelectedNewsItem {get;set;}//INPC when it is being set check for null and then process the selected item.

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM