【发布时间】:2014-03-19 07:40:35
【问题描述】:
我正在使用数据网格来查看我的应用程序。
我需要能够根据文本框(txtpallet)的输入来选择并显示一行。
数据网格有一个滚动条。我可以突出显示我想要的行,但用户仍然需要向下滚动到它。
我希望数据网格自动向下滚动到我选择的行。
我不知道该怎么做。我现在挣扎太久了,希望得到一些帮助。
我制作了一个小型测试应用。请看下面的代码。
我在设备应用程序 (Windows CE) 中使用 c# .net 2.0 紧凑框架
private void populateGrid()
{
try
{
string sub = "my connection string";
OracleConnection conn = new OracleConnection(sub);
string query;
query = "Select emp_id_no,emp_username from dc_emp order by emp_id_no";
{
conn.Open();
using (OracleDataAdapter a = new OracleDataAdapter(query, conn))
{
DataTable t = new DataTable();
a.Fill(t);
dgSku.TableStyles.Clear();
DataGridTableStyle tableStyle = new DataGridTableStyle();
tableStyle.MappingName = t.TableName;
foreach (DataColumn item in t.Columns)
{
DataGridTextBoxColumn tbcName = new DataGridTextBoxColumn();
tbcName.Width = 80;
tbcName.MappingName = item.ColumnName;
tbcName.HeaderText = item.ColumnName;
tableStyle.GridColumnStyles.Add(tbcName);
}
dgSku.TableStyles.Add(tableStyle);
dgSku.DataSource = t;
DataRow[] datarow = t.Select("emp_username like '" + txtpallet.Text + "' ");
foreach (DataRow dr in datarow)
{
MessageBox.Show("Index is " + dr.Table.Rows.IndexOf(dr));
dgSku.Select(dr.Table.Rows.IndexOf(dr));
}
}
}
conn.Close();
}
catch (OracleException x)
{
MessageBox.Show("" + x);
}
}
这里有两个例子: A)在列表顶部选择一些东西 B)在底部某处选择一些东西
一)
B)
【问题讨论】:
标签: c# datagrid compact-framework windows-ce c#-2.0