使用 edmx 以编程方式使用数据文本字段填充网格视图



我在这里遇到了一个问题。我在 c# 中有一个 edm 查询,其中我根据用户选择的内容用多个表填充 1(一)个网格视图控件。我让它工作并用所有数据填充表。

我需要知道在行中加载列名及其数据的最佳方法是什么。我无法使用列名称预加载网格视图,因为数据每次都会有所不同。我还想要网格视图上的按钮字段,其中文本显示为表的主要 ID。

我已经尝试了几乎所有方法,任何帮助将不胜感激。

这是我的代码:

  using (ITIncidentsEntities dbc = new ITIncidentsEntities()) {
        var Query = (from c in dbc.GeneralIncidents
                     select c);
        if (!string.IsNullOrWhiteSpace(txtDate.Text))
        {
            DateTime _date = Convert.ToDateTime(txtDate.Text);
            Query = Query.Where(c => c.CreateDate == _date);
        }
        if (!string.IsNullOrWhiteSpace(txtAuthor.Text))
        {
            Query = Query.Where(c => c.Author.Contains(txtAuthor.Text));
        }
        if (!string.IsNullOrWhiteSpace(txtIncidentFormat.Text))
        {
            Query = Query.Where(c => c.Title == txtIncidentFormat.Text);
        }
        grvResults.DataSource = Query.ToArray();
        grvResults.DataBind();
        grvResults.Columns.Add(new ButtonField { HeaderText = "Print", Text = "??? Datavalue Field" });
   }

多谢。

好的

,我已经找到了适合我的解决方案。

grvResults.DataSource = Query.ToArray();
grvResults.Columns.Add(new BoundField { DataField = "ValueID", HeaderText = "General ID" });
grvResults.Columns.Add(new BoundField { DataField = "Value", HeaderText = "General" });
grvResults.DataBind();

我将在适当的情况下根据用户的选择生成此内容。

最新更新