2

に 2 つの情報を含むオブジェクトがありますobjData[0]。情報はSystem_IDNetwork_IDです。データはクエリからデータベースに送られます。

system_IDオブジェクトからデータを取得し、それを 用と用の 2 つの別々のテキスト ボックスに表示したいと考えていますNetwork_ID。現在、それらをコンボボックスに入れています。

私のコードの下を参照してください:

    //get network ID and systenm name
    private void cmbAddItem_SelectedIndexChanged(object sender, EventArgs e)
    {
        FASystems fSys = new FASystems(sConn);
        object objData =  fSys.getSystemNetworkIDFriendlyName(cmbAddItem.Text.ToString());
        cmbNetworkID.DataSource = objData;
        cmbNetworkID.DisplayMember = "Network_ID";
        cmbSysName.DataSource = objData;
        cmbSysName.DisplayMember = "System_Name";
        // txtNetworkID.Text = objData[0].Network_ID;
    }
4

2 に答える 2

1

C# コンパイラが 3.0 以降であると仮定すると、API 呼び出しで var キーワードを使用します

var objData =  fSys.getSystemNetworkIDFriendlyName(cmbAddItem.Text.ToString()); 

objData に、少なくとも Network_ID をメンバーとして持つタイプの配列があることが正しいと仮定しましょう...

txtNetworkID.Text = objData[0].Network_ID;  

それでうまくいくはずです。

于 2012-08-25T09:30:07.363 に答える
0

getSystemNetworkIDFriendlyNameの関数宣言を投稿して、戻り値の型をどのように設定しているかを示すことができますか?

NetworkIDとSystemIDを格納するための新しいクラスを作成することをお勧めします

class SystemInfo
{
   public string NetworkID { get; set; } 
   public string SystemId { get; set; } 
}

関数getSystemNetworkIDFriendlyNameを書き直して、SystemInfoのインスタンスを返します。次に、テキストボックスにデータを入力すると次のようになります。

 FASystems fSys = new FASystems(sConn);
 SystemInfo inf o=  fSys.getSystemNetworkIDFriendlyName(cmbAddItem.Text.ToString());
 txtNetworkID.Text = info.NetworkID;

お役に立てれば、

KenC

于 2012-09-13T11:50:24.927 に答える