引用Xamarin Forms xaml頁面中的靜態變量/屬性引用的概念(https://developer.xamarin.com/guides/xamarin-forms/xaml/xaml-basics/xaml_markup_extensions/);有關於引用這樣一段:Xamarin表示靜態類引用:多個級別下降
BackgroundColor="{x:Static local:AppConstants.ForegroundColor}"
...其中地方是聲明命名空間,AppConstants.ForegroundColor指的是靜態屬性的靜態類,像這樣:
namespace XamlSamples
{
static class AppConstants
{
public static readonly Color ForegroundColor =
Device.OnPlatform(Color.Black, Color.White, Color.White);
....
}
}
我的問題是,它似乎不工作,如果它下降到另一個級別(不知道該怎麼說)。例如,如果我想結合:
SomeNumericalValue="{x:Static local:AppConstants.ForegroundColor.Hue}"
...這是行不通的:它拋出一個編譯錯誤「中的xmlns找不到類型AppConstants.ForegroundColor‘namespacename ......’」。它似乎無法再進一步訪問'Hue'屬性。
我不明白,這在WPF中有效,但我無法在Xamarin Forms中找到相應的方法。我錯過了什麼嗎?是否因爲「色相」不是靜態的?
我想我只是碰到了解決方案:我必須在'x:Static'前添加'綁定'。 雖然它是如何或爲什麼起作用,我不知道。我谷歌搜索的例子似乎沒有說明這一點。無論如何,希望它可以幫助任何人遇到同樣的問題... –