在 ListView C# 的 ItemTemplate 中获取值
Get Values inside an ItemTemplate of a ListView C#
<ListView Name="myList" Background="Transparent" Margin="15,88,15,15">
<ListView.ItemTemplate>
<DataTemplate>
<StackPanel>
<Grid Height="100">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="200"/>
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<StackPanel Grid.Column="0" Margin="5">
<TextBlock Name="xName" Text="{Binding Name}" FontSize="30" Margin="10,0,5,0" FontWeight="Medium"/>
<TextBlock Name="xNo" Text="{Binding No}" FontSize="25" Margin="10,0,5,0" TextTrimming="CharacterEllipsis"/>
</StackPanel>
<Grid Grid.Column="1" Margin="5">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="1*"/>
</Grid.ColumnDefinitions>
<RadioButton Grid.Column="0" Name="r1" Content="1" Width="10" Margin="5,15,-2,5"/>
<RadioButton Grid.Column="1" Name="r2" Content="2" Width="10" Margin="5,15,-2,5"/>
</Grid>
</Grid>
</StackPanel>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
现在我想检索 ListView 中的每个项目,即其中的控件。 TextBlocks 内容并知道选择了哪个 RadioButton。
我试过像这样 classes
public class Att
{
public string Name;
public string No;
public RadioButton r1;
public RadioButton r2;
}
ListView 中的文本框内容有单独的来源。他们来自不同的 classes。我尝试使用上面的 class Att 检索项目。
但它显示了一些类型转换错误。请任何人帮助我!我是初学者。
谢谢提前。
感谢大家的支持!
好吧,我试着自己做,最后我明白了。我真正想要的是知道选中了哪个 RadioButton。我尝试使用 class Att 来检索 ListView 中的项目。我修改了 Att Class 并添加了 bool 类型的属性 r1 和 r2 而不是 RadioButton 并将此 属性 绑定到 XAML 中 RadioButton 的 IsChecked 属性 并且绑定模式是TwoWay。所以在 XAML 中所做的更改可以反映在项目的源列表中。
<ListView Name="myList" Background="Transparent" Margin="15,88,15,15">
<ListView.ItemTemplate>
<DataTemplate>
<StackPanel>
<Grid Height="100">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="200"/>
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<StackPanel Grid.Column="0" Margin="5">
<TextBlock Name="xName" Text="{Binding Name}" FontSize="30" Margin="10,0,5,0" FontWeight="Medium"/>
<TextBlock Name="xNo" Text="{Binding No}" FontSize="25" Margin="10,0,5,0" TextTrimming="CharacterEllipsis"/>
</StackPanel>
<Grid Grid.Column="1" Margin="5">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="1*"/>
</Grid.ColumnDefinitions>
<RadioButton Grid.Column="0" Name="r1" Content="1" Width="10" Margin="5,15,-2,5"/>
<RadioButton Grid.Column="1" Name="r2" Content="2" Width="10" Margin="5,15,-2,5"/>
</Grid>
</Grid>
</StackPanel>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
现在我想检索 ListView 中的每个项目,即其中的控件。 TextBlocks 内容并知道选择了哪个 RadioButton。 我试过像这样 classes
public class Att
{
public string Name;
public string No;
public RadioButton r1;
public RadioButton r2;
}
ListView 中的文本框内容有单独的来源。他们来自不同的 classes。我尝试使用上面的 class Att 检索项目。 但它显示了一些类型转换错误。请任何人帮助我!我是初学者。 谢谢提前。
感谢大家的支持!
好吧,我试着自己做,最后我明白了。我真正想要的是知道选中了哪个 RadioButton。我尝试使用 class Att 来检索 ListView 中的项目。我修改了 Att Class 并添加了 bool 类型的属性 r1 和 r2 而不是 RadioButton 并将此 属性 绑定到 XAML 中 RadioButton 的 IsChecked 属性 并且绑定模式是TwoWay。所以在 XAML 中所做的更改可以反映在项目的源列表中。