Я работаю над проектом, где мы используем только один GridView для отображения результатов по различным результатам Linq.Использование DataKeys с LinqToSql как DataSource на codebehind
Это GridView имеет:
AutoGenerateColumns = true;
Существует результат Linq, что мы хотим использовать в качестве источника данных. В этом результате у нас есть столбцы, которые мы хотели бы использовать в качестве DataKeys. Когда мы привязываем результаты к нашему GridView, мы не хотим показывать эти столбцы пользователям.
Вот пример:
gvMyGrid.DataSource = from finalRows in summaryReport
select new
{
finalRows.a,
finalRows.b,
finalRows.c,
finalRows.d,
finalRows.e
};
gvMyGrid.DataKeyNames = new string[] { "a", "b" };
gvMyGrid.DataBind();
Таким образом, после этого связывания будет сделано, мы все еще видим «а» и «б» в качестве столбцов. мы можем использовать «а» и «б», когда мы называем:
gvReport.Datakeys
, но мы не хотим, чтобы увидеть их на GridView.
Так что мой вопрос в том, как мы можем скрыть эти столбцы, но все еще использовать их как datakeys? Спасибо.
Вы можете добавить "gvReport.Columns [0] .Visible = ложь;" чтобы скрыть определенный столбец, или вы можете установить «AutoGenerateColumns = false» и вручную определить таблицу. – Zachary
Мне нужно установить AutoGenerateColumns в true, потому что у нас есть только один gridview для отображения всех результатов, и каждый набор результатов имеет различное количество столбцов. Так есть другой способ? – selo