2012-01-10 8 views
0

ASP.NETでは、私は<%#Bind%>を使用して双方向データバインディングを実現し、データソースコントロールは私の更新機能を完了できます。ASP.NETで<%# Bind %>を使用するトリッキーな方法

しかし、私はそれは私がInsertDateが存在していないときに「N/A」表示したい場合は、単に、

<%# Bind("InsertDate") %> 

のように、簡単な形式を示ししかしときだけ簡単だと思います。どのように<%#バインド%>を使用して状態チェックを達成するのですか?私はバインド機能を知っている

<%# Bind("InsertDate", "0:{dd MMM yyyy}") %> 

のように、フォーマット文字列をサポートしています。しかし、それはInsertDateのコンテンツのフォーマットベースを変更することはできません。

私も使用しよう:

<%# FormatString(Bind("InsertDate").ToString()) %> 

通常、Eval関数のために働くのが機能していないようです。

別の例は、私は2つを達成するために<%#バインド%>を使用する方法を次に

<asp:checkboxlist> 
    <asp:ListItem value="1" text="OptionA"> 
    <asp:ListItem value="2" text="OptionB"> 
    <asp:ListItem value="4" text="OptionC"> 
    </asp:checkboxlist> 

ように、リストビューコントロールによってラップCheckBoxListので表される表のビット単位のカラム(5など)を有しています-wayバインドを使用してビット列をこのチェックボックスリストにバインドしますか?

現在、私は何をすべきかは、次のとおりです。

  1. セットのCheckBoxListの選択した項目(値)リストビューのItemDataBoundイベントハンドラ

  2. でのHiddenFieldを使用して にこれのHiddenFieldにデータをバインドする双方向を実現データバインド。

  3. LivtViewのItemUpdatingイベントハンドラで、ListViewUpdateEventArgsのNewValueプロパティを上記の値に更新します。 EntityDataSourceは更新操作を正しく実行できます。

しかし、この方法は簡単ではないと思います。

これを行うには他にも優れた方法がありますか?

+0

'formatStringの(バインド( "InsertDate")、それを呼び出すことができますToStrig()' - 。あなたがそこにタイプミスがあり、それは '.ToString()'ではないでしょうか? – jadarnel27

答えて

0

パブリックデータ型を使用してください。あなたのコードビハインドで

public string name; 
//Do whatever assignment operations to your variable "name" 

そして、あなたのaspxページ上としてあなたの変数を宣言します。あなたは

<% Response.Write(name); %> 
関連する問題