基于来自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中。如何做到这一点?

基于来自Texbox的用户输入构建查询,并将其显示在另一个Textbox中

您可以在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}"/>

我希望它能帮助你。