none
wpf中绑定的xml代码内可以嵌套c#表达式吗?或者说是类似JSP的el表达式。 RRS feed

  • 问题

  • <DataTemplate>

    <StackPanel>

    <TextBlock Text="{Binding {Path.getFileName(FileAddress)}}" />

    </StackPanel>

    </DataTemplate>

    类似上面这种设想,或者说是类似jsp的el表达式.一个字符串本身就含有很多信息,为了能展现更多的信息,而多设属性感觉有点麻烦。如果能直接用类似el表达式方式就更好了,假如绑定了一个字符串属性,而且存储的是文件路径,那么绑定的时候怎么在界面里呈现出来的是文件名呢,而不是文件地址呢?如果可以这样的话,可以减少一些多设置实体对象一些的属性的麻烦。甚至是因为多设属性占用多一些内存.

      

    <x:Code>标签我是知道的,但是我想把它写在{binding <x:Code></x:Code>} 中,来取出绑定属性的内容

    ,进行一些筛选处理,并将筛选后的结果展示到ListViewItem内上,不知道怎么做





    2017年3月16日 2:30

全部回复


  • 专注于.NET ERP/CRM开发框架,C/S架构,SQL Server + ORM(LLBL Gen Pro) + Infragistics WinForms

    https://www.codeproject.com/articles/42980/how-to-embed-a-c-code-into-an-xaml-file

    <Window x:Class="WpfApplicationWithoutCShFiles.Window1"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        Title="WPF Application Without CSharp Files"
        SizeToContent="WidthAndHeight"
        ResizeMode="CanMinimize"
        Height="300" Width="1000">
    
        <Grid Height="255" Width="930">
    
            <Button Margin="400,67,404,126"
                    Click="ButtonOnClick">
                Press the Button
            </Button>
    
            <x:Code>
                <![CDATA[<span class="code-SummaryComment">
    
                void ButtonOnClick(object sender, RoutedEventArgs args)
                {
                    Button btn = sender as Button;
                    MessageBox.Show("The button labeled '" +
                                    btn.Content +
                                    "' has been clicked.","Information Message");
                }
                ]]></span>
            </x:Code>
        </Grid>
    </Window>

    2017年3月16日 4:33