Я использую иерархическую сетку сетки Telerik. Я хочу скрыть кнопку разворачивания/скрытия. Если вопрос имеет определенный тип. Я пытаюсь добиться этого на Grid_ItemDatatbound.Не удается найти элемент управления внутри ячейки сетки
<CW:GridView ID="rGVEvaluationQuestions" runat="server" Width="99%" OnItemDataBound="rGVEvaluationQuestions_ItemDataBound"
OnDetailTableDataBind="rGVEvaluationQuestions_DetailTableDataBind" OnNeedDataSource="rGVEvaluationQuestions_NeedDataSource"
AllowPaging="false" ShowHeader="false" GridLines="Both">
<MasterTableView DataKeyNames="ID" AllowMultiColumnSorting="True">
<DetailTables>
<Telerik:GridTableView DataKeyNames="ID" Name="LabelQuestion" Width="100%" Height="100px">
<Columns>
<Telerik:GridTemplateColumn HeaderText="<%$Resources:LanguageResource, Edit%>" ItemStyle-Width="50px"
DataField="ID">
<ItemTemplate>
<asp:HiddenField ID="hdnEvalID" runat="server" />
<asp:HiddenField ID="hdnEvaluationQuestionID" runat="server" />
<asp:HiddenField ID="hdnEvaluationQuestionTypeID" runat="server" />
<asp:Label ID="lblQuestionNumber" runat="server"></asp:Label>
</ItemTemplate>
</Telerik:GridTemplateColumn>
<Telerik:GridTemplateColumn ItemStyle-HorizontalAlign="Left">
<ItemTemplate>
<asp:Label ID="lblQuestion" runat="server"></asp:Label><br />
<br />
Display="Dynamic"></asp:CustomValidator></td>
</ItemTemplate>
</Telerik:GridTemplateColumn>
//Some Hidden fields and textboxex here
</Columns>
</Telerik:GridTableView>
</DetailTables>
<Columns>
<Telerik:GridTemplateColumn HeaderText="<%$Resources:LanguageResource, Edit%>" ItemStyle-Width="50px"
DataField="ID">
<ItemTemplate>
<asp:HiddenField ID="hdnEvalID" runat="server" />
<asp:HiddenField ID="hdnEvaluationQuestionID" runat="server" />
<asp:HiddenField ID="hdnEvaluationQuestionTypeID" runat="server" />
<asp:Label ID="lblQuestionNumber" runat="server"></asp:Label>
</ItemTemplate>
</Telerik:GridTemplateColumn>
<Telerik:GridTemplateColumn ItemStyle-HorizontalAlign="Left">
<ItemTemplate>
<asp:Label ID="lblQuestion" runat="server"></asp:Label><br />
<br />
//Some Hidden fields and textboxex here
Display="Dynamic"></asp:CustomValidator></td>
</ItemTemplate>
</Telerik:GridTemplateColumn>
</Columns>
</MasterTableView>
</CW:GridView>
По кодексу, за которым это делается.
if (evalQuestionType == Coursewhere.BLL.Enums.EvaluationQuestionType.Label)
{
if (item.Cells.Count > 0)
{
item.Cells[0].Text = " ";
item.Cells[0].Enabled = true;
}
}
else
{
item.Cells[0].Text = " ";
if (item.Cells[0].Controls.Count>0)
{
item.Cells[0].Controls[0].Visible = false;
}
item.Cells[0].Enabled = false;
item.Cells[0].Style.Add("background", "#8ea3b9 none");
}
item.cell [0] является тд, который имеет <input type Button>
.however IM не смог найти его здесь в коде позади. После того, как я нашел, я хочу установить его стиль. Что я делаю неправильно? Пожалуйста, не то, что им удалось найти item.control [0], который является td. Но не в состоянии заплатить контроль, который внутри него. Это потому, что он не работает @server?
EDIT: Я нашел следующий код, который я вызываю на странице_prerender. Это делает кнопку expand/hide невидимой для всех строк. Но я хочу, чтобы это произошло только для определенных строк.
protected void rGVEvaluationQuestions_PreRender(object sender, EventArgs e)
{
HideExpandColumnRecursive(rGVEvaluationQuestions.MasterTableView);
}
public void HideExpandColumnRecursive(GridTableView tableView)
{
GridItem[] nestedViewItems = tableView.GetItems(GridItemType.NestedView);
foreach (GridNestedViewItem nestedViewItem in nestedViewItems)
{
foreach (GridTableView nestedView in nestedViewItem.NestedTableViews)
{
if (nestedView.Items.Count == 0)
{
TableCell cell = nestedView.ParentItem["ExpandColumn"];
cell.Controls[0].Visible = false;
cell.Text = " ";
nestedViewItem.Visible = false;
}
if (nestedView.HasDetailTables)
{
TableCell cell = nestedView.ParentItem["ExpandColumn"];
if (cell.Controls.Count > 0)
{
cell.Controls[0].Visible = true;
cell.Text = " ";
nestedViewItem.Visible = true;
}
}
}
}
}
может кто-то пожалуйста, помогите мне в использовании функции этой функции на DataBound функции, так что я мог бы расширить кнопку соответствующей строки отключит/невидимым?