基于来自Texbox的用户输入构建查询,并将其显示在另一个Textbox中
本文关键字:显示 Textbox 另一个 查询 Texbox 构建 输入 用户 | 更新日期: 2023-09-27 17:58:26
我试图实现的是从用户(userID)中获取一个存储在TextBox中的参数。用户在文本框中输入一个示例UserID,单击"查看"按钮,屏幕上的文本框中将显示相应列中的一些记录。我不想使用DataGrid,因为它看起来总是像table:)。
问题是,我不知道如何将用户输入到DB2Command中,然后在屏幕上的文本框中显示select中的一些值:/。
这是我的代码:
查看按钮
iDB2Connection nc = new iDB2Connection();
nc.ConnectionString = "DataSource=vf05.it.volvo.se; DefaultCollection=VF05;";
nc.Open();
iDB2Command cmd = new iDB2Command("Select AAUSER, AANODE, AAORGN from library.file where AAUSER = @UserID ", nc);
cmd.Parameters.AddWithValue("UserID", UserInput.Text);
iDB2DataReader dr = cmd.ExecuteReader();
我应该向UserInput文本框添加什么代码,以及如何在文本框中显示选择结果?我甚至可以使用DataGrid,然后在文本框中显示DataGrid中的一些值,但我不知道如何在DataGrid中显示ExecuteReader。我可能应该读一些关于数据绑定的文章。。。
第页。S
我试图使用这个将select语句的结果放入DataGrid
iDB2DataReader dr = cmd.ExecuteReader();
dataGrid1.ItemsSource = dr;
cmd所在位置:
iDB2Command cmd = new iDB2Command("Select AAUSER, AANODE, AAORGN from T0T02PD.T0F001 where AAUSER = 'A0390944' ", nc);
这似乎可以正常工作,但无论如何,我想将所选列中的数据放入TextBoxes中。如何做到这一点?
您可以在ViewModel中的属性上创建一个带有Binding的TextBox,并将绑定设置为mode=TwoWay,以便从用户界面更新ViewModel值。
在您的ViewModel中:
public int UserID { get; set; }
在您的Xaml:中
<TextBox Text="{Binding UserID, mode=TwoWay}"/>
之后,您可以将结果项存储在列表中,并将其绑定到ListBox中的ItemsSource属性。
在您的ViewModel中:
public List<YourResultType> Items { get; private set; }
在您的Xaml:中
<ListBox ItemsSource="{Binding Items}"/>
我希望它能帮助你。