モデルのインスタンスにバインドしようとしているブール値プロパティを持つカスタムボタンがあります。すべてが正しいと思われますが、それはプロパティの変更をキャッチしていません...ソース値が変更されたときにDataBound依存関係プロパティが更新されない
MyControl.BooleanProperty
はSource.BooleanProperty
が変更されたときにMyControl.BooleanProperty
と一致するように更新されます。
<Window
...
xmlns:p="clr-namespace:FooProject.Properties"
DataContext="{x:Static p:Settings.Default}">
<MyControls:GlassButton
Pulsing="{Binding Pulse}"/>
</Window>
アプリケーション設定内には、「パルス」(ブール値プロパティ)というプロパティがあります。
これは私の制御に関連するソースコードです:
public class GlassButton : Button {
#region Dependency Properties
public static readonly DependencyProperty
//A whooole lot of irrelevant stuff...
PulsingProperty = DependencyProperty.Register(
"Pulsing", typeof(bool), typeof(GlassButton),
new FrameworkPropertyMetadata(false)),
//Lots more irrelevant stuff
[Category("Pulse")]
public bool Pulsing{
get{ return (bool)(this.GetValue(PulsingProperty));
set{
if (value)
this.BeginAnimation(BackgroundProperty, this._baPulse);
else
this.BeginAnimation(BackgroundProperty, null);
this.SetValue(PulsingProperty, value);
}
}
//And a pile of more irrelevant stuff.
私はPulsing
セッターに設定されたブレークポイントを持っていますが、彼らはヒットしない飽きない...
それはベア内かどうかを、一貫して動作していますこのような骨のアプリケーション、または本物の正直な本物のアプリケーションに...
なぜバインディングは取れていないのですか?
私はそれを見なければならないでしょうが、意味があります...ありがとう。 – Will
それが問題でした。ありがとう(私は自分自身が嫌い)。 – Will