2012-07-26 25 views
1

我擁有自己的自定義TextBox類。部分它可以幫助我處理來自條形碼閱讀器的掃描。爲文本框的後代獲取綁定到TextProperty的值的更改事件

我需要這個工作的一部分是捕獲綁定到TextProperty的值更改時的一種方法。

注意:我不在尋找「TextChanged」事件或任何類型的與按鍵相關的事件(除非該鍵按下更新源)。

我需要一個事件,只有當基礎值被改變時纔會觸發,我需要能夠在我的TextBox中訪問它(意味着它不能在ViewModel中)。

這可能嗎?

回答

2

是的,你可以這樣做:

在類的構造函數:

var dpd = DependencyPropertyDescriptor.FromProperty(YourTextBoxClass.TextProperty, typeof(YourTextBoxClass)); 
if (dpd != null) 
{ 
    dpd.AddValueChanged(this, ThisIsCalledWhenPropertyIsChanged); 
}  

然後處理程序:

private void ThisIsCalledWhenPropertyIsChanged(object sender, EventArgs e) { } 

希望它能幫助,

問候

相關問題