我正在尝试从列表框中获取所选项的值,并使用MessageBox.Show()显示该消息。 这是列表框的我的XAML代码
<ListBox x:Name="lbTodoList" Grid.Row="1" Width="350" Margin="100,0,0,0">
<ListBox.Background>
<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
<GradientStop Color="#FF060000" Offset="0"/>
</LinearGradientBrush>
</ListBox.Background>
<ListBox.ItemTemplate>
<DataTemplate>
<StackPanel Orientation="Horizontal">
<TextBlock x:Name="Listbox" Grid.Row="1" Text="{Binding salutationName}" />
</StackPanel>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
c#代码用于数据绑定
List<UserData> info = JsonConvert.DeserializeObject<List<UserData>>(e.Result);
List<UserData> items = new List<UserData>();
lbTodoList.Items.Clear();
foreach (UserData item in info)
{
items.Add(new UserData() { salutationName = item.salutationName });
}
this.lbTodoList.ItemsSource = items;
这是为了显示所选项目
string text = lbTodoList.SelectedItem.ToString();
MessageBox.Show(text);
但问题不是显示所选项目,而是显示projectName.ClassName
答案 0 :(得分:0)
一个简单的解决方法是覆盖UserData的ToString以提供您期望的内容。
public class UserData
{
...
public override string ToString()
{
return this.somevalue;
}
}