Telerik RadgridView - сделать столбцы невидимыми по критериям - PullRequest
0 голосов
/ 26 февраля 2020

Я нахожусь в процессе преобразования стандартных ASP. NET Gridviews в Telerik RadGridViews. Одним из важных аспектов этого для некоторых сеток является то, что определенные столбцы шаблонов не видны пользователю на основании некоторых критериев. Эти столбцы шаблонов были asp: столбцы шаблона (кнопки) на старых сетках и будут телериком: столбцы сетки на новых RadGridviews

Процесс сокрытия кнопки на старых сетках выполнялся с помощью метода rowDataBound , Другими словами, в методе RowDataBound был код, подобный

, если переменная состояния просмотра = какое-то значение, отключите свойство enabled / visible для столбца шаблона кнопки.

Поскольку для RadGridview отсутствует метод RowDataBound, есть ли способ выполнить то же самое в RadGridViews sh, либо во время поиска, либо после получения?

Спасибо

1 Ответ

0 голосов
/ 06 марта 2020

Используйте приведенный ниже фрагмент кода в событии PreRender RadGrid, чтобы скрыть столбцы

ASPX

    <telerik:radgrid id="RadGrid1" runat="server" OnPreRender="RadGrid1_PreRender">
    <Columns>
        <telerik:GridButtonColumn UniqueName="btn_column"></telerik:GridButtonColumn>
    </Columns>
    </telerik:RadGrid>

CS

protected void RadGrid1_PreRender(object sender, EventArgs e) 
{ 
    rgCards.MasterTableView.GetColumn("btn_column").Visible = false;    // set this based on your 'view state variable = some value'
{

Кроме того, вы можете используйте событие OnItemDataBound RadGrid (запускается после привязки элемента к элементу управления RadGrid), чтобы показать / скрыть каждую строку.

ASPX

    <telerik:radgrid id="RadGrid1" runat="server" OnItemDataBound="RadGrid1_ItemDataBound">

CS

protected void RadGrid1_ItemDataBound(object sender, GridItemEventArgs e) 
{ 
    if (e.Item is GridDataItem) 
    { 
        GridDataItem item = (GridDataItem)e.Item; 
        item["btn_column"].Visible = false;    // set this based on your 'view state variable = some value'
    } 
} 

Кроме того, также можно использовать событие OnItemCreated (которое запускается на сервере при создании элемента в элементе управления RadGrid) для достижения аналогичных результатов.

См. Документацию Telerik RadGrid для подробные сведения - Обзор RadGrid

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...