【问题标题】:Populate Textbox from Listbox Selection | Windows 7 Phone从列表框选择填充文本框 |视窗 7 电话
【发布时间】:2014-04-07 16:27:39
【问题描述】:

问题:

简单地说,列表框中预定义项目的最佳/最简单方法是什么

(如“鲍勃”

要填充到 Windows 7 Phone 环境中的 TextBox 中?

示例:

如果我从列表框中选择 "Bob" - 那么 "Bob" 应该会立即显示在文本框中

(因此用户无需输入用户名)

..他们可以使用用户名列表中的预制用户名。

问题:

  • 我已经尝试寻找这些小东西,但没有找到解决方案。
  • 我找到的解决方案非常模糊。
  • YouTube 和其他地方的许多视频并未真正涵盖 Windows 7 的这一点
  • 我担心 Windows 8 Mobile 有所不同。
  • 现在,我的代码无法使用列表框选择填充文本框。
  • 相对较新的程序员,试图在 c# 中找到自己的立足点

代码:

我真的不知道该怎么做。我尝试使用名为 SelectionChanged 的​​内置功能,但没有成功。

【问题讨论】:

    标签: c# windows textbox listbox populate


    【解决方案1】:

    你的班级

    public class Movie
    {
       public string Actor { get; set; }
       public string Name { get; set; }
    
    }
    

    使用数据创建电影列表。

    public class MovieList : List<Movie>
    {
       public MovieList()
       {
         Add(new Movie { Name = "Titanic", Actor = "xxx", });
         Add(new Movie { Name = "LordOFtheRings", Actor = "yyyy",  });
       }
    }
    

    在 XAML 中,

    <ListBox Height="596" Name="listBox1" Width="380" >
    <ListBox.ItemTemplate>
    <DataTemplate>
    <StackPanel Orientation="Horizontal">
    <TextBlock Text="{Binding Path=Name}"></TextBlock>
    </StackPanel>
    </DataTemplate>
    </ListBox.ItemTemplate>
    </ListBox>
    

    在你的代码 behind.cs

     public MainPage()
    {
       InitializeComponent();
       FillListBox();
    }
    
    private void FillListBox()
    {
       listBox1.ItemsSource = new MovieList();
    }
    

    你的文本框应该是

    <TextBox Text="{Binding ElementName=listBox1, Path=SelectedValue}"/>
    

    【讨论】:

      猜你喜欢
      • 2014-03-06
      • 1970-01-01
      • 2023-03-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多