Справка по связыванию wpf / silverlight - PullRequest
2 голосов
/ 26 июля 2011

Допустим, у меня есть сложное свойство с именем CarData и простой bool AllowSubmit. Xaml:

<Grid ..... DataContext={Binding CarData}>
...TextBoxes binded, working
....

last line in the grid:
<Button IsEnabled={Binding AllowSubmit}>
</Grid>

Проблема в том, что AllowSubmit не связан. Я думаю, это потому, что DataContext сетки привязан к свойству CarData, потому что, если я помещу кнопку вне сетки, она будет работать. Также я подумал, что если я переопределю DataContext, установив для параметра DataContext кнопки значение AllowSubmit, это поможет, но это не сработает. Я знал, что это довольно новый вопрос, но как правильно поступить? Я уверен, что можно связать кнопку с другим свойством, чем свойство сетки. Спасибо за вашу помощь.

1 Ответ

2 голосов
/ 26 июля 2011

Свойство DataContext наследуется элементами управления внутри него.Так что, если вы измените его в Grid, то он также эффективно изменит его на всех элементах управления внутри.

Похоже, что вы должны делать:в CarData, чтобы DataContext кнопки не затрагивался.

...