2011-08-20 45 views
1

Gridviewにテーブルを表示しています。フィールドによっては、01が含まれますが、平均値はYesNoです。 Gridviewにテーブルを表示するときは、0's1'sを編集してYesまたはNoと表示したいと思います。値に基づいてGridviewセルの値を編集する(VB.NET)

これがどのように機能するかについてのご意見はありますか?

ありがとうございます!


<asp:BoundField HeaderText="Gearchiveerd?" InsertVisible="false" DataField="BestellingGearchiveerd" SortExpression="BestellingGearchiveerd"> 
<ItemStyle HorizontalAlign="Center" VerticalAlign="Middle" /> 
</asp:BoundField> 

Gearchiveerd? =ヘッダー

BestellingGearchiveerd =列名

+0

あなたはGridViewのための偽autogeneratecolumnsを設定している:可能なソリューション/ wはここで追加情報がありますか? – suryakiran

+0

はい、私はそれをオフにして、私が望む独自のテーブルセットを作成しました。私はすでに空のセルと日付セルを編集することができましたが、if-elseの原因を追加する方法はわかりません。 (または私がそれを働かせるために必要なもの) – CustomX

+0

テーブルワードの使用が間違っています。むしろ列で置き換えるべきです。 – suryakiran

答えて

0

以下の実装を参照してください。これは本当にあなたを助けるかもしれません。

デザイン

<asp:gridview ID="Gridview1" runat="server" AutoGenerateColumns="false"> 
<Columns> 
<asp:TemplateField HeaderText="Yes/No"> 
<ItemTemplate> 
<asp:Label ID="lblYesNo" Text='<%#GetText(Eval("BitColumnName")) %>' runat="server"></asp:Label> 
</ItemTemplate> 
</asp:TemplateField> 
</Columns> 
</asp:gridview> 

C#コード

protected string GetText(object value) 
{ 
    int textValue; 
    if (int.TryParse(Convert.ToString(value), out textValue)) 
    { 
     if (textValue == 0) 
      return "No"; 
     else 
      return "Yes"; 
    } 
    else 
    { 
     return "&nbsp;"; 
    } 
} 

VBコード

Protected Function GetText(value As Object) As String 
    Dim textValue As Integer 
    If Integer.TryParse(Convert.ToString(value), textValue) Then 
     If textValue = 0 Then 
      Return "No" 
     Else 
      Return "Yes" 
     End If 
    Else 
     Return "&nbsp;" 
    End If 
End Function 

必要に応じて、いいえはいを変更することができます。これは役に立ちます。

+0

申し訳ありませんが、これはC#です。私はVB.NETコーディングを使用しているはずです。 – CustomX

+0

GetTextメソッドまたは関数ですべてのケースを処理できます。 :) – suryakiran

+0

すごく感謝! :) – CustomX

関連する問題