2011-10-20 12 views
0

私はこのような状況で、ASP.Netに関して、この問題が伝えられていることを知っています。 しかし、私は文脈を理解しておらず、それらの答えが私のExt.Netコンポーネントと一致しないので、私は再度尋ねる必要があります。Ext.Net RowSelectionModel、現在選択されている行から値を取得しますか?

私の場合、エンティティフレームワークはLinqDataSource経由で接続しています。 RowSelectハンドラが何をするのか、

  <SelectionModel> 
      <ext:RowSelectionModel ID="RowSelectionModel1" runat="server" SingleSelect="true"> 
       <Listeners> 
        <RowSelect Handler="#{EditPanel}.getForm().loadRecord(record);#{UserForm}.record = record;" /> 
       </Listeners> 
      </ext:RowSelectionModel> 
     </SelectionModel> 

最初の質問がある、または言うより良いしてみましょう: 私はGridPanelは、次のコードで選択モデルを持っていることに加えて、JsonReader含むストアを持っているGridPanelを持っています誰か私にその行を説明できますか? 私はext.netページの例の行をコピーして、選択した行のすべての値をEditPanelに渡しましたが、実際の動作は分かりません。

私の2番目の質問は、自分のEntity Frameworkからのデータを表すGridPanelに9列あります。選択した行の最初の列からデータを取得するにはどうすればよいですか?

ありがとうございます!

答えて

1

このコード:

#{EditPanel}.getForm().loadRecord(record); 

は、レコード内の値で、あなたのFormPanelのフィールドを初期化します。

あなたがここに見ることができますいくつかの詳細:http://docs.sencha.com/ext-js/3-4/#!/api/Ext.form.BasicForm-method-loadRecord

あなたには、いくつかの店からの値によってautomaticalyフォームの値を設定したい場合、これは非常に便利です。たとえば、値がロードされたストアがあり、レコードに関する詳細情報を表示したいとします。

このコード:選択したレコードによる 'ユーザーフォーム' の

#{UserForm}.record = record; 

セット 'レコード' フィールド。 Ext.NETでは、これにはいくつかの目的があるとは思われませんが、アプリケーションロジックで役に立つかもしれません。


そして、2つ目の質問への答え:。

{} GridID .selModel.getSelected()の代わりに 'ID' のdata.Id //あなたは#ので、レコードの任意のフィールド名を配置することができます{GridID} .selModel.getSelected()は、選択したレコードを返します。

+0

ご協力いただきありがとうございます。説明は理にかなっています。しかし、これはjavascriptコール/ハンドラよりも正しいですか?明日の残りの部分をテストします! – Evils

+0

はい、これはJavaScriptコードです。 Ext.NETとExtJsとのやりとりが非常に近いため、ExtJを学ぶのに役立つかもしれません。また、FireBugを使用して結果のHTMLとJavaScriptコードを調べると非常に便利です。どのようなパラメータハンドラがExt.NET – Baidaly

+0

の一般的なロジックを受け取るかはわかります。次の問題は、同じ質問です。 C#でCodeBehind内の選択した行からこれらの値を取得するにはどうすればよいですか? – Evils

関連する問題