简体   繁体   English

通过XAML代码访问环境变量

[英]Access to environment variables by xaml code

It is possible to access somehow ONLY via xaml code to an environment variable? 是否可以通过xaml代码仅以某种方式访问​​环境变量? In my case, I only need the read access. 就我而言,我只需要读取权限。

You can write a custom markup extension. 您可以编写自定义标记扩展。 Something like: 就像是:

[MarkupExtensionReturnType(typeof(String))]
public class EnvironmentVarExtension : MarkupExtension
{
    private string _variableName;

    public EnvironmentVarExtension(string variableName)
    {
        _variableName = variableName;
    }

    public override object ProvideValue(IServiceProvider serviceProvider)
    {
        return Environment.GetEnvironmentVariable(VariableName);
    }

    [ConstructorArgument("variableName")]
    public string VariableName
    {
        get { return _variableName; }
        set { _variableName = value; }
    }
}

And use it in your XAML: 并在您的XAML中使用它:

<Grid>
    <TextBlock Text="{local:EnvironmentVar Path}" />
</Grid>

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

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