私は本当に長い間私を悩ませた非常にトリッキーな問題を抱えています..
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+ コンボボックス コード (リモート データベースから読み取る) の良いサンプルを持っている人はいますか?