Wpf Binding.Path設置


Binding.Path

獲取或設置綁定源屬性的路徑。

每個綁定通常都具有四個組件:綁定目標對象、目標屬性、綁定源,以及要使用的綁定源值的路徑。有關這些數據綁定概念的更多信息,請參見數據綁定概述

使用 Path 屬性可以指定您要綁定到的源值:

  • 在最簡單的情況下,Path 屬性值是要用於綁定的源對象的屬性名,如 Path=PropertyName。

  • 通過類似於 C# 中使用的語法,可以指定屬性的子屬性。例如,子句 Path=ShoppingCart.Order 設置與對象或屬性 ShoppingCart 的Order 子屬性的綁定。

  • 若要綁定到附加屬性,應在附加屬性周圍放置圓括號。例如,若要綁定到附加屬性 DockPanel.Dock,則語法是 Path=(DockPanel.Dock)。

  • 可以在要應用索引器的屬性名后面的方括號內指定屬性的索引器。例如,子句 Path=ShoppingCart[0] 將綁定設置為與屬性的內部索引處理文本字符串“0”的方式對應的索引。此外,還支持多個索引器。

  • 可以在 Path 子句中混合索引器和子屬性;例如,Path=ShoppingCart.ShippingInfo[MailingAddress,Street].

  • 在索引器內部,您可以有多個由逗號 (,) 分隔的索引器參數。可以使用圓括號指定每個參數的類型。例如,您可以有 Path="[(sys:Int32)42,(sys:Int32)24]",其中 sys 映射到 System 命名空間。

  • 如果源為集合視圖,則可以用斜杠 (/) 指定當前項。例如,子句 Path=/ 用於設置到視圖中當前項的綁定。如果源為集合,則此語法指定默認集合視圖的當前項。

  • 可以結合使用屬性名和斜杠來遍歷作為集合的屬性。例如,Path=/Offices/ManagerName 指定源集合的當前項,該源集合包含也作為集合的 Offices 屬性。其當前項是一個包含 ManagerName 屬性的對象。

  • 也可以使用句點 (.) 路徑綁定到當前源例如,Text="{Binding}" 等效於 Text="{Binding Path=.}"。

實例:

下面的示例顯示一個用於創建 ToolTip 以報告驗證錯誤消息的樣式觸發器。使用 RelativeSource 屬性將 setter 的值綁定到當前 TextBox(使用樣式的 TextBox)的錯誤內容。有關此示例的更多信息,請參見How to: Implement Binding Validation

<
  Style
   x:Key
  ="textBoxInError"
   TargetType
  ="{x:Type TextBox}"
  >
  <Style.Triggers>
    <Trigger Property="Validation.HasError" Value="true">
      <Setter Property="ToolTip"
        Value="{Binding RelativeSource={x:Static RelativeSource.Self},
                        Path=(Validation.Errors)[0].ErrorContent}"/>
    </Trigger>
  </Style.Triggers>
</Style>

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM