나는 aspx 페이지를 통해 템플릿 필드에 몇 개의 열을 추가하는 표가 있습니다.정적 및 동적 열이있는 지우기 격자
<asp:TemplateField>
<ItemTemplate>
<asp:LinkButton ID="lnkBtnDown" runat="server" CommandName="Download" Text="Download"></asp:LinkButton>
<asp:LinkButton ID="LnkBtnMan" runat="server" CommandName="Manual" Text="Manual"
Style="margin-left: 10px"></asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
은 그리드는 테이블에서 검색 결과를 표시하고 등등 파일 이름 열 등 내가 숨길 수있는 몇 가지 열이있다,하지만 난 데이터를 필요합니까 ... 그래서 CSS 스타일을 사용하여 숨기기 . 내가하여 그리드를 새로 고침 모든 검색 버튼을 클릭 이벤트의 시작에서
private void generateSearchGrid(DataTable dt)
{
if (dt == null || dt.Rows.Count == 0)
return;
dgvSearchResults.DataSource = dt;
dgvSearchResults.AutoGenerateColumns = false;
BoundField bfName = new BoundField();
bfName.DataField = dt.Columns["OsmProjectName"].ToString();
bfName.HeaderText = "Project Name";
BoundField bfProjID = new BoundField();
bfProjID.DataField = dt.Columns["OsmProjectID"].ToString();
bfProjID.HeaderText = "ID";
BoundField bfProjFile = new BoundField();
bfProjFile.DataField = dt.Columns["OsmProjectFile"].ToString();
bfProjFile.HeaderText = "Project File";
BoundField bfProjManual = new BoundField();
bfProjManual.DataField = dt.Columns["OsmProjectManual"].ToString();
bfProjManual.HeaderText = "Project Manual";
BoundField bfProjType = new BoundField();
bfProjType.DataField = dt.Columns["OsmProjectType"].ToString();
bfProjType.HeaderText = "Project Type";
dgvSearchResults.Columns.Add(bfProjID);
dgvSearchResults.Columns.Add(bfName);
dgvSearchResults.Columns.Add(bfProjType);
// WARNING : Keep these two at the end all the time in the same order.
dgvSearchResults.Columns.Add(bfProjFile);
dgvSearchResults.Columns.Add(bfProjManual);
dgvSearchResults.DataBind();
// Assigning a css where display has been set to none.
bfProjManual.HeaderStyle.CssClass = "hiddenCols";
bfProjID.HeaderStyle.CssClass = "hiddenCols";
bfProjFile.HeaderStyle.CssClass = "hiddenCols";
bfProjManual.ItemStyle.CssClass = "hiddenCols";
bfProjID.ItemStyle.CssClass = "hiddenCols";
bfProjFile.ItemStyle.CssClass = "hiddenCols";
}
,
dgvSearchResults.DataSource = null;
dgvSearchResults.DataBind();
dgvSearchResults.Columns.Clear();
는 그러나 이것은 내가 기대 영문 page..as으로 바인드 포함한 모든 열을 지 웁니다. 삭제하지 않으면 검색 결과의 열이 계속 누적됩니다.
동적으로 바인드 된 열만 지울 수있는 방법이 있습니까?