コンボボックスにデフォルト値 'select'を追加する必要があります。この値をデータベースに追加することはできません。この位置値は動的です。これはuserroleに基づいて表示されます。私は何も働かなかったさまざまな方法を試しました。助けてください。 wpfコンボボックスのデフォルト値をtextBlock
<ComboBox Width="140" ItemsSource="{Binding SecurityContexts, Mode=OneWay}"
SelectedItem="{Binding ActiveSecurityContext, Mode=TwoWay}"
ToolTip="Working Location">
<ComboBox.ItemTemplate>
<DataTemplate>
<TextBlock Text="{Binding Location}"/>
</DataTemplate>
</ComboBox.ItemTemplate>
</ComboBox>
コードが後ろ SecurityContexts =新規のObservableCollection(_currentUser.ApplicationSecurityContexts)です。
public interface IApplicationSecurityContext
{
IRole Role { get; }
string Location { get; }
IEnumerable<string> Budgets { get; }
}
public IApplicationSecurityContext ActiveSecurityContext
{
get { return this._currentUser.ActiveSecurityContext; }
set
{
if (this._currentUser.ActiveSecurityContext != value)
{
this._currentUser.ChangeActiveSecurityContext(value);
RaisePropertyChanged("CurrentUser");
LoadData();
}
}
}
カスタムオブジェクトを定義されたパスです:あなたは、あなたのアイテムがC cがあること
ノートを表示する方法を定義するには、あまりにもリソースにあなたのコレクションのためのあなたのDataTemplateを定義する必要があります:コンボボックスアイテムとして表示されるべき "場所"プロパティを公開するSecurityContextsクラスのコレクションを持っています。 1つの要素を正しく追加するだけでいいですか? –
申し訳ありません。以前のコメントでは「行く」のではなく「やっている」。しかし、あなたに私たちにいくつかの説明を与えていないなら、あなたに答えを与えるのは難しいでしょう。多分xamlだけでなく、特に "SecurityContexts"と何が作られているのかというコードを投稿してください。 –
ありがとうございます。追加されたコードを確認してください...コンボボックスは、ユーザーの役割に基づいてlocation1、location5などを表示します...コンボボックスにデフォルト値 'select'を追加するだけです – newbee