MarkupExtension ها قبلا در اینجا توضیح داده شده اند. یکی از MarkupExtensionهای از پیش تعریف شده x:Static است که برای مقداردهی یک خصوصیت در XAML با یک مقدار استاتیک استفاده میشود.اگر بخواهید از یک ثابت(constant)،یک خصوصیت استاتیک(static property)، یا یک مقدار از یک enumeration، برای مقداردهی یک خصوصیت در XAML استفاده کنید باید از این MarkupExtension استفاده کنید.
برای مثال برای یک استفاده از یک خصوصیت استایک به صورت زیر عمل میکنیم:
توجه داشته باشید که برای استفاده از این ثابت باید ابتدا فضای نام مربوط به آن را تعریف کنید.
و یا برای مقدار دهی از طریق یک Enumeration
و در فایل XAML:
برای استفاده از یک ثابت نیز به همین صورت عمل میکنیم.
برای مثال برای یک استفاده از یک خصوصیت استایک به صورت زیر عمل میکنیم:
namespace Test { public class Constants { public static readonly string ConstantString = "Test"; } }
xmlns:test="clr-namespace:ItemTest " <Label Content="{x:Static test:Constants.ConstantString}" />
namespace Test { public enum VisiblityEnum { Collapse, Hidden, Visible }; }
xmlns:test="clr-namespace:Test" <Label Content="{x:Static test:VisiblityEnum.Collapse}" />