0

私は本当に長い間私を悩ませた非常にトリッキーな問題を抱えています..

Ext.net 2.0 コンボボックスを使用して、リモート DB からオプションを表示しようとしていました。すべて正常に動作しますが、ページが最初にロードされたときに、C# でコンボの選択を変更しないと、combobox.value が id ではなくテキストに等しいという問題が 1 つだけあります。

データベースは非常に簡単です。「Test_table」には 2 つの列があり、1 つは Tid と呼ばれ、もう 1 つは TextContent です。

私のフロントエンドコード:

<ext:ComboBox ID="TestCombo" runat="server" Editable="false" DisplayField="TextContent"
   ValueField="Tid" TypeAhead="true" AllowBlank="false" EmptyText="Select a text
   id..." SelectOnFocus="true" FieldLabel="test text">
   <Store>
       <ext:Store ID="TestStore" runat="server" AutoLoad="true" AutoDataBind="true" 
             OnReadData="testStore_RefreshData">
           <Proxy>
               <ext:PageProxy>
               </ext:PageProxy>
           </Proxy>
           <Model>
                <ext:Model ID="Model1" runat="server" IDProperty="Tid">
                    <Fields>
                        <ext:ModelField Name="Tid" />
                        <ext:ModelField Name="TextContent" />
                    </Fields>
                </ext:Model>
           </Model>
        </ext:Store>
     </Store>
  </ext:ComboBox>

保存ボタンをクリックした後、ブレークポイントを追加して var _M = TestCombo.value を取得しようとしましたが、コンボボックスの選択を変更した後に保存をクリックすると、_M の値が正しい (Tid 値に等しい) ように見えます。 、_M の値は TextContent になります。

この問題の原因を知っている人はいますか? または、Ext.net 2.0+ コンボボックス コード (リモート データベースから読み取る) の良いサンプルを持っている人はいますか?

4

0 に答える 0