【问题标题】:how to get application path in resources tag in xaml?如何在 xaml 的资源标签中获取应用程序路径?
【发布时间】:2014-07-07 09:11:59
【问题描述】:

我正在开发一个应用程序,我需要从 xml 文件中读取数据并需要在组合框中显示数据。我已经按照网上的例子完成了申请。 但现在我需要来自 bin 或应用程序启动的文件路径。

   <Grid.Resources>
        <!--<Path> string currpath ="System.AppDomain.CurrentDomain.BaseDirectory"</Path>-->
            <XmlDataProvider x:Key="AppConfig" **Source="Z:\\AppConfiguration.xml"** XPath="Configuration"/>

    </Grid.Resources>

现在我想要存储文件的应用程序路径中的 Source。 提前致谢。

【问题讨论】:

  • 为什么不在代码中绑定路径?

标签: c# wpf xaml


【解决方案1】:

首先定义一个存储xmlfilepath值的属性

public string xmlfilepath{get;set;}

您可以在后面的代码中获取应用程序基目录并将其存储在一个变量中,并制作这样的连接字符串

xmlfilepath= System.AppDomain.CurrentDomain.BaseDirectory + "your folder name and file name path will come here";

然后您可以将 Source 属性与路径变量绑定,如下所示

<XmlDataProvider x:Key="AppConfig" Source="{Binding xmlfilepath,Mode=Twoway,UpdateSourceTrigger=PropertyChanged}" XPath="Configuration"/>

【讨论】:

  • 您好,感谢您的回复。我已经尝试了您提供的代码,但它给出了错误错误 1 ​​无法在“XmlDataProvider”类型的“源”属性上设置“绑定”。只能在 DependencyObject 的 DependencyProperty 上设置“绑定”。
  • 欢迎您。请将其标记为答案..如果它真的对你有帮助
  • @AshokRathod 他只是说它不起作用.. 然后他为什么要把它标记为答案?
  • 在这种情况下,我建议您直接将 xml 文件绑定到您所需的控件,如下面所述的示例 stackoverflow.com/questions/1866942/…
【解决方案2】:

您可以使用pack://siteoforigin:pack://application:。例如:

<Image Source="pack://siteoforigin:,,,/Resources/Logo.png" />

【讨论】:

猜你喜欢
  • 2020-09-23
  • 2021-04-24
  • 2012-05-13
  • 2022-11-04
  • 2014-07-04
  • 1970-01-01
  • 2019-06-29
  • 2020-12-09
  • 2018-10-09
相关资源
最近更新 更多