簡體   English   中英

WPF 對照結合序列

[英]WPF Control binding sequence

我正在編寫自己的 WPF 控件。

在我的控件代碼中,如何指定依賴屬性綁定的順序/優先級?

    <listselector:ChListSelector 
                Grid.Row="3" 
                SelectableGridLabelText="My Label"
                SelectedGridLabelText="My Other Label"
                SelectableItems="{Binding Path=SelectableItems, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
                SelectedItems="{Binding Path=SelectedItems, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
                SelectableGridColumns="{Binding Path=SelectableGridColumns, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
                SelectedGridColumns="{Binding Path=SelectedGridColumns, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
                />

我需要確保在兩個“項目”屬性之前綁定兩個“GridColumns”屬性(因為 GridColumns 屬性定義了我的控件上的幾個網格如何顯示項目)

您真的不想指定綁定到依賴屬性的順序。 而且我認為沒有任何方法可以明確地做到這一點。

您應該檢查依賴屬性的 PropertyChanged 回調中的其他屬性值,然后根據它們的狀態執行操作。

例如:設置項目屬性時,請在更新控件的 rest 之前檢查以確保網格屬性不是 null(或使用標志設置)。 如果它們是 null,不要做任何事情。 隨后,當設置網格屬性時,您可以更新控件的 rest。 (您還需要檢查不是 null 的項目。)

或者為了簡化它,只需為控件設置一個Setup()方法,null 在執行之前檢查所有必需的屬性,並在每次設置屬性時調用它。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM