【发布时间】:2015-08-19 00:25:11
【问题描述】:
我在使用文本框过滤数据网格值(来自数据库)时遇到了一些问题。事实上,我是 WPF C# 的新手,在这种情况下我需要一些帮助。
这是我的 XAML:
<Button Name="btnSelect"
Content="Select All"
Height="30"
Width="80"
Margin="4"
HorizontalAlignment="Center"
Click="btn_SelectUser"/>
<DataGrid Name="dtgUser"
AutoGenerateColumns="True"
HorizontalAlignment="Left"
VerticalAlignment="Top" Height="380" Width="684"
Margin="10,54,0,0"/>
这是我在按下 Select 按钮后从数据库中选择值的代码:
private void btn_SelectUser(object sender, RoutedEventArgs e)
{
_con = new SqlConnection(_strConn);
try
{
_con.Open();
string query = "select id_int_user, name_str_user from tbl_user";
_cmd = new SqlCommand(query, _con);
_cmd.ExecuteNonQuery();
_adp = new SqlDataAdapter(_cmd);
_dt = new DataTable("tbl_user");
_adp.Fill(_dt);
dtgUser.ItemsSource = _dt.DefaultView;
_adp.Update(_dt);
_con.Close();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
这是在文本框中选择刚刚编辑的值。如何实现此方法? (注意:我需要通过数据网格从数据库中获取值):
private void txt_SearchUser(object sender, TextChangedEventArgs e)
{
//Here is my difficulty //I know nothing how to do it.
}
【问题讨论】:
-
DataGrid的ItemsSource可以让您将数据放入其中,但是,它只需要IEnumerable<T>,因此您可能想找到解决方法。 -
为什么要返回数据库中的所有值?如果已经输入了值,为什么不在 SQL 查询中添加 where 子句?
-
@Nikerym 他使用
Update将数据放入DataTable。我假设他想全部查询并从客户端过滤。
标签: c# .net wpf database datagrid