• 绑定非元素对象


    Source

    指向源对象的引用(提供数据的对象)——编写代码,或者从静态资源获取

    RelativeSoerce

    根据相对于目标对象的关系,指向源对象。

    将一个元素绑定到自身或者父元素。

    DataContext

    大量元素绑定到同一个对象。

    在上层对象中,使用DataContext属性。 上几层无所谓。

    <Window x:Class="Demo.WPFLearning.Bindingg.BindNoElementObjects"
            xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
            xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
            xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
            xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
            xmlns:local="clr-namespace:Demo.WPFLearning.Bindingg"
            mc:Ignorable="d"
            Title="BindNoElementObjects" Height="350" Width="400">
        <Window.Resources>
            <FontFamily x:Key="CustomFont1"> Calibri</FontFamily>
            <FontFamily x:Key="CustomFont2">Seria</FontFamily>
        </Window.Resources>
        <Grid>
            <StackPanel Margin="3" Name="StackPanel" DataContext="{x:Static SystemFonts.IconFontFamily}">
                <TextBlock Text="{Binding Source={x:Static SystemFonts.IconFontFamily},Path=Source}" Margin="3"/>
                <TextBlock Text="{Binding Source={StaticResource CustomFont1},Path=Source}" Margin="3"/>
    
                <TextBlock  >
                    <TextBlock.Text>
                        <Binding Path="Name">
                            <Binding.RelativeSource>
                                <RelativeSource Mode="FindAncestor" AncestorType="{x:Type StackPanel}" AncestorLevel="1"/>
                            </Binding.RelativeSource>
                        </Binding>
                    </TextBlock.Text>
                </TextBlock>
    
                <TextBlock Margin="5" Text="{Binding Path=Title,RelativeSource={RelativeSource Mode=FindAncestor,AncestorType={x:Type Window}}}"/>
    
                <TextBlock Text="{Binding Source={x:Static SystemFonts.IconFontFamily},Path=Source}" Margin="3"/>
                <TextBlock Text="{Binding Source={x:Static SystemFonts.IconFontFamily},Path=LineSpacing}" Margin="3"/>
                <TextBlock Text="{Binding Source={x:Static SystemFonts.IconFontFamily},Path=FamilyTypefaces[0].Style}" Margin="3"/>
                <!--在上层设置dataContext 属性后,不需要再重新设置Source了,-->
                <TextBlock Text="{Binding Path=Source}" Margin="3"/>
                <TextBlock Text="{Binding Path=LineSpacing}" Margin="3"/>
                <TextBlock Text="{Binding Path=FamilyTypefaces[0].Style}" Margin="3"/>
    
            </StackPanel>
        </Grid>
    </Window>
  • 相关阅读:
    ABAP-Spotlight on ABAP for SAP HANA – Again
    ABAP-ABAP Development
    ABAP-Performance Guidelines for ABAP Development on the SAP HANA Database
    ABAP-Getting Started with ABAP Core Data Services (CDS)
    ABAP-Technology and Runtime Environment
    ABAP-Test and Analysis Tools
    ABAP-Connectivity Wiki
    python爬虫
    python爬虫
    python爬虫
  • 原文地址:https://www.cnblogs.com/codinghard/p/15680847.html
Copyright © 2020-2023  润新知