1

次のコードを使用して、コンボボックスの表示方法を変更しようとしています:

    private void UpdateMapRoadPointList(List<GeographicAddress> plstMapRoadPointList)
    {
        cboFind.DataSource = plstMapRoadPointList;
        cboFind.DisplayMember = "ShortCode";
        cboFind.ValueMember = "";
    }

GeographicAddress は、文字列を返す ShortCode プロパティを持つクラスです。

    internal string ShortCode
    {
        get { return Distance + Carriageway; }
    }

ただし、アプリケーションを使用する場合、表示される値は依然として GeographicAddress.ToString() から取得されます。デバッグでは、cboFind.DisplayMember = "ShortCode" は効果がないようです! DisplayMember は、その行を実行する前後に "" です!

私は何が欠けていますか?

4

1 に答える 1

6
public string ShortCode
    {
        get { return Distance + Carriageway; }
    }

private void UpdateMapRoadPointList(List<GeographicAddress> plstMapRoadPointList)
    {
        cboFind.DataSource = plstMapRoadPointList;
        cboFind.DisplayMember = "ShortCode";
    }

これはうまくいくはずです

ShortCodeプロパティを Public に設定しないと、失敗して使用されますGeographicAddress.ToString()

于 2009-01-21T11:36:02.240 に答える