1

aspx ページにリスト ボックスがあります。

<asp:ListBox ID="lstTreatmentProvider" runat="server" SelectionMode="Multiple" Width="175px"
                                        Height="81" CssClass="SingleColumnlist" DataSourceID="dtsTreatmentProviders" DataTextField="FirstName" DataValueField="ServiceId"></asp:ListBox>

リストボックスにこのデータソースを使用しています:

<asp:ObjectDataSource ID="dtsTreatmentProviders" runat="server" SelectMethod="GetAllTreatmentProviders"
                        TypeName="Pc.PrecisionCare2.BLL.Administration.TreatmentProvider.TreatmentProviderBO"
                        SortParameterName="sortExpression"></asp:ObjectDataSource>

ご覧のとおり、リスト ボックスで使用しています。DataTextField="FirstName"これは、データソースが名、姓などを含む処理プロバイダーのデータを返すためです。

リスト ボックスを含むようにしたいのですが、First Name + Last NameDataTextField プロパティを使用してこれを行うことはできますか?

PS: cs ファイルでこれを行いたくありません。私はaspxで何かが欲しいです。

前もって感謝します。

4

4 に答える 4

0

First Name + Last Nameコードビハインドで取得したくない場合は、SQLクエリで取得できます。例えば..

Select ([First Name] + [Last Name]) as [First Name],... from TableName
于 2011-06-06T06:15:52.723 に答える
0

以下のように、Public プロパティを TreatmentProviderBOに追加してみてください。

public String FullName
{
    get { return FirstName + " " + LastName ;}
}

DataTextField を FullName に設定できます。

BO が編集できない場合は、拡張メソッドを使用できると思いますが、DataTextField にメソッド名を付けられるかどうかはよくわかりません。試すことができます。

于 2011-06-06T06:22:02.733 に答える
0

この投稿は役に立ちますか?

ドロップダウン リストをディクショナリにバインドする

匿名型も使えると思います。

于 2011-06-06T06:22:29.673 に答える
0

LINQ に固執しているためにクエリを変更したくない場合は、次のクエリを試してください。

  var aa = (from Varible in Collection select new { name = Varible.FirstName + Varible.LastName }).ToList();

ここで、DataTextField プロパティを「name」に設定します。それが役に立てば幸い。

于 2011-06-06T06:34:51.720 に答える