繁体   English   中英

如何在C#中使用WPF在Xaml中绑定动态值

[英]How to Bind dynamic values in Xaml using WPF in c#

我已经在WPF中使用两个窗口创建了应用程序。 在一个窗口中,我使用了一个文本框和提交按钮。 从第一个窗口提交后,我将隐藏第一个窗口并显示第二个窗口。 我已经使用第一个窗口文本值获取了一些值,并且需要在第二个窗口Xaml中进行绑定。 实际上,值可以使用html(mvc)中的foreach进行绑定,但需要绑定Xaml才能在第二个窗口中显示。 请给一些建议。

请找到以下答案,它肯定会工作

Xaml:

<ItemsControl Name="icTodoList">
                        <ItemsControl.ItemTemplate>
                            <DataTemplate>
                                <Grid Margin="200,50,0,30">
                                    <TextBlock>
                                       <Hyperlink TextDecorations="None" NavigateUri="{Binding UriPath}" RequestNavigate="Hyperlink_RequestNavigate"
                                                  CommandParameter="{Binding ElementName=myImg}">
                                                        <Image HorizontalAlignment="Left" Width="80" Height="80"  x:Name="myImg" Source="{Binding Source}" Margin="5"/>
                                       </Hyperlink>
                                    </TextBlock>

                                    <TextBlock TextAlignment="Left" Margin="200,30,0,0">
                                            <TextBlock FontSize="22px" Text="{Binding Title}" Foreground="white"></TextBlock>
                                    </TextBlock>
                                </Grid>
                            </DataTemplate>
                        </ItemsControl.ItemTemplate>
                    </ItemsControl>

绑定值的C#代码

 public class DMScreen3 {
    public List<string> AllFiles { get; set; }
              List<BindingFilesContent> items = new List<BindingFilesContent>();
                    if(AllFiles != null)
                    {
                        foreach(var r in AllFiles)
                        {
                            if ((r.ToLower().Contains(".avi") || r.ToLower().Contains(".mp4")) && fileTypes == "video")
                            {
                                items.Add(new BindingFilesContent() { Title = Path.GetFileName(r), UriPath = r, Source = "/images/videoicon.png" });
                            }
        icTodoList.ItemsSource = items;
                  }
        }
}
  public class BindingFilesContent
    {
        public string Title { get; set; }
        public string Source { get; set; }
        public string UriPath { get; set; }
    }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM