在我們的項目中,我們創建了一些具有一些依賴屬性的自定義控件。在我們使用此控件的xaml頁面上,我們將Map控件的BoundingRectangle屬性綁定到此自定義控件,以便我們可以在自定義控件中使用這些LocationRect對象。將BoundingRectangle綁定到自定義控件依賴項屬性
當我們調試這個時,我們看到BoundingRectangle(North,NorthEast等)中的每個屬性都具有相同的位置。如果我們正在檢查地圖上的屬性,那麼我們會發現這些屬性並不完全相同。 (如預期的那樣)
我附加了一個更改回調到dependencyproperty,並且在那裏我看到所有屬性都具有相同的值。但是,如果我綁定中心屬性比我看到它更新正確。
我們結合對類似這樣的定製控件的屬性:
<CustomControls:MiniMap Name="SmallMap" BoundingBox="{Binding ElementName=Map, Path=BoundingRectangle}" />
這是我們的依賴屬性:
public static readonly DependencyProperty BoundingBoxProperty =
DependencyProperty.Register("BoundingBox", typeof(Location), typeof(MiniMap), new UIPropertyMetadata(new LocationRect()));
任何人都知道,爲什麼不更新的BoundingBox屬性時LocationRectangle是在地圖上更新?
您沒有解釋問題是什麼:我假設問題是當Map中的BoundingRectangle屬性發生更改時,自定義控件中的BoundingBox屬性不會更新。這是問題嗎?如果是:是Map的依賴項屬性中的BoundingRectangle屬性?如果它不是一個依賴屬性:Map實現INotifyPropertyChanged嗎? – 2012-05-24 15:32:03
你說得對,我已經更新了這個問題。我正在使用內置的Microsoft Bing Maps控件,有沒有辦法檢查BoundingRectangle屬性是否是依賴項屬性? – ChristiaanV
如果文檔提到名爲'BoundingRectangleProperty'的字段,那麼它是一個依賴項屬性。否則,這是一個普通的財產。 – 2012-05-24 19:05:53