2009-08-31 11 views
4

質問をソートするには:GridViewのAutoGenerateColumnsとGridViewのは、VB.NETでのソートについて

私は、ソートのイベントハンドラ(OnSorting="Gridview1_Sorting")を宣言したAutoGenerateColumns = True

<asp:GridView ID="GridView1" FooterStyle-BackColor="Aquamarine" 
    AutoGenerateColumns="true" AllowSorting="true" OnSorting="Gridview1_Sorting" 
    AllowPaging="True" PageSize="12" OnRowCreated="GridView1_RowCreated" 
    RowStyle-Wrap="true" runat="server" Width="100%" > 
    <HeaderStyle BackColor="#E0E0E0" ForeColor="#000000"/> 
    <FooterStyle BackColor="Aquamarine" /> 
     <emptydatarowstyle backcolor="#CBE0FD" forecolor="#0000FF"/> 
</asp:GridView> 

とGridViewコントロールを持っている、それが正常に動作します。

しかし、その後、私はHeaderRowのテキストを設定すると、私はもはやへのタイトルをクリックすることはできません列のタイトル(私は、データベースから取得彼らは、データセット内にあるようヘッダ)

GridView1.HeaderRow.Cells(0).Text = "Document" ' "PROC_UID" 
GridView1.HeaderRow.Cells(1).Text = "Process Step" ' "PROC_DOC_UID" 

を変更ソート(これも下線なし)。 どうすれば修正できますか?

答えて

4

は、あなたがコントロールセット内のリンクボタンを検索し、リンクテキストを更新する必要があります

http://forums.asp.net/p/996470/1691883.aspx#1691883を参照してください。

+0

ほとんどの優秀。 e.Row.Cellsの各tblThisCellのリンクボタンのテキストテーブルセル として 薄暗いtblThisCellがLinkBut​​tonコントロール= tblThisCell.Controls(0) のSelect Case lnkBut​​ton.Textとして 点心lnkBut​​tonを試してみてください HTMLencodeなど で "" 交換する必要があります ケース "DOC_Bezeichnung" lnkBut​​ton.Text = "DOKUMENT" 例外 MyDebug.MsgBox(ex.Message) エンドとして エンドを選択 キャッチの元にそれを行うための最善の方法 –

2

あなたはグリッドによって使用されるSQLクエリであなたの列をエイリアシングによって、列のヘッダーを変更することができます。

Select ColumnA as [Whatever], ColumnB as [Name It This] From Table .... 
+0

場合 次 エンドをお試しください! – TheVillageIdiot

+0

また、このメソッドで私のクエリを変更する必要がありますので、良いですが、私に問題をもたらします。 –