Vote count:
0
I've a static class which reads information from the application assembly.
I've declared it static since I will only ever need a single application-wide accessible instance of the class. I have a control with several labels that I would like to use to display some of this information.
How can I go about setting the controls DataContext equal to the class?
Code:
/// <summary>
/// Class for Reading Program Information.
/// </summary>
public static class ProgramInfo {
private static Assembly ProgramAssembly = Assembly.GetEntryAssembly( );
/// <summary>
/// Get Program Name
/// </summary>
public static string ProgramName {
get { return ProgramInfo.ProgramAssembly.GetCustomAttribute<AssemblyProductAttribute>( ).Product; }
}
/// <summary>
/// Get Program Build Date
/// </summary>
public static DateTime BuildDate {
get { return File.GetLastWriteTime( ProgramInfo.ProgramAssembly.Location ); }
}
/// <summary>
/// Get Program Version (Major.Minor)
/// </summary>
public static string Version {
get {
System.Version V = ProgramInfo.ProgramAssembly.GetName( ).Version;
return V.Major.ToString( ) + '.' + V.Minor.ToString( );
}
}
/// <summary>
/// Get Program Build (Build.Revision)
/// </summary>
public static string Build {
get {
System.Version V = ProgramInfo.ProgramAssembly.GetName( ).Version;
return V.Build.ToString( ) + '.' + V.Revision.ToString( );
}
}
}
XAML:
<UserControl x:Class="DGToolChest.Controls.ProgramInformation"
xmlns="http://ift.tt/o66D3f"
xmlns:x="http://ift.tt/mPTqtT"
xmlns:mc="http://ift.tt/pzd6Lm"
xmlns:d="http://ift.tt/pHvyf2"
xmlns:pi="clr-namespace:Tools.Controls"
DataContext="{pi:ProgramInfo}">
asked 14 secs ago
Can I set a DataContext to a static class?
Aucun commentaire:
Enregistrer un commentaire