【发布时间】:2022-01-10 14:05:09
【问题描述】:
我想通过 Actionuserid 单元格值过滤我的 DataGridView 行。我只想看到 1 个用户行。
我的数据源是actionsBLL.ActionsList();
DataGridView填充代码:
List<actionsVAL> ActionsList = actionsBLL.ActionsList();
dataGridView_actions.DataSource = ActionsList;
dataGridView_actions.RowHeadersVisible = false;
dataGridView_actions.ReadOnly = true;
dataGridView_actions.Columns[0].Width = 45;
dataGridView_actions.Columns[1].Width = 110;
dataGridView_actions.Columns[2].Width = 70;
dataGridView_actions.Columns[3].Width = 90;
dataGridView_actions.Columns[4].Width = 114;
动作列表:
public static List<actionsVAL> ActionsList()
{
List<actionsVAL> sonuc = new List<actionsVAL>();
OleDbCommand cmdactionlist = new OleDbCommand("SELECT * from actions", dbConnection.conn); // tüm faaliyetleri gösteren sql sorgusu
if (cmdactionlist.Connection.State != ConnectionState.Open)
{
cmdactionlist.Connection.Open();
}
OleDbDataReader dr = cmdactionlist.ExecuteReader();
while (dr.Read())
{
actionsVAL act = new actionsVAL();
act.Actionid = int.Parse(dr["actionid"].ToString());
act.Actionuserid = int.Parse(dr["userid"].ToString());
act.Actionbookid = int.Parse(dr["bookid"].ToString());
act.Actiondate = dr["actiondate"].ToString();
act.Actiontype = dr["actiontype"].ToString();
sonuc.Add(act);
}
dr.Close();
return sonuc;
}
ActionVAL:
namespace ValueObjectLayer
{
public class actionsVAL
{
public int Actionid { get; set; }
public int Actionbookid { get; set; }
public int Actionuserid { get; set; }
public string Actiontype { get; set; }
public string Actiondate { get; set; }
}
}
【问题讨论】:
-
您的问题缺少一个重要部分……一个实际问题。我们可以看到显示的网格和类,并且您想通过
Actionuserid过滤网格。我建议您对如何“过滤列表”进行一些研究……在这种情况下,它可能看起来像……var filteredList = ActionsList.Where(x => x.Actionuserid == targetValue。似乎没有代码显示您尝试“过滤”列表,因此除非我们知道什么没有按预期工作,否则很难提供帮助。
标签: c# winforms datagridview