0

TextBoxがあり、文字列プロパティにバインドされています。

テキストボックス:

<TextBox x:Name="SearchBox"
     Text="{Binding SearchText, Source={StaticResource SearchEngine}, Mode=TwoWay}"
</TextBox>

およびにバインドされているクラス:

public class SearchEngine : ViewModelBase 
{
    private string _searchText = string.Empty;

    public SearchEngine() {
        Console.Out.WriteLine("this = {0}", this);
        SearchText = "Search";
    }

    public string SearchText 
    {
        get { return _searchText; }
        set 
        {
            if (_searchText != value) 
            {
                _searchText = value;
                Console.Out.WriteLine("AAAAAAAAAAAA: " + value);
                NotifyPropertyChanged();
            }
        }
    }
}

問題は、TextBoxに入力しても、SearchTextが更新されないことです。

4

2 に答える 2

0

以下をせよ:

<TextBox x:Name="SearchBox" Text="{Binding SearchText, Mode=TwoWay}" />

コードビハインドで、DataContextプロパティをインスタンスに割り当てます。

SearchEngine searchEngine = new SearchEngine();
SearchBox.DataContext = searchEngine;

ここを参照してください。

于 2013-02-25T12:26:03.170 に答える
0

xamlでupdatesourcetriggerを次のように使用する必要があります。

<TextBox x:Name="SearchBox" Text="{Binding SearchText, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged"/>
于 2013-02-25T12:29:28.913 に答える