public ObjectProperties(object obj, bool readOnly, Action action) { if (obj == null) { throw new ArgumentNullException(nameof(obj)); } DataContext = obj; InitializeComponent(); if (action != null) { Loaded += (sender, e) => OnLoaded(action); } Title = obj + " Properties"; if (obj != null) { var roa = AssemblyUtilities.GetAttribute <ReadOnlyAttribute>(obj.GetType()); PGrid.IsReadOnly = roa != null && roa.IsReadOnly; } if (readOnly) { PGrid.IsReadOnly = true; } PGrid.SelectedObject = obj; if (PGrid.IsReadOnly) { Cancel.Content = "Close"; OK.Visibility = Visibility.Hidden; } }
public Asm(Assembly asm) { Name = asm.FullName; if (!AssemblyUtilities.IsDynamic(asm)) { try { Location = asm.Location; } catch { // do nothing } } if (string.IsNullOrEmpty(Location)) { Location = " "; } AssemblyFileVersionAttribute vatt = AssemblyUtilities.GetAttribute <AssemblyFileVersionAttribute>(asm); if (vatt != null) { Version = vatt.Version; } else { AssemblyVersionAttribute att = AssemblyUtilities.GetAttribute <AssemblyVersionAttribute>(asm); if (att != null) { Version = att.Version; } } InformationalVersion = AssemblyUtilities.GetInformationalVersion(asm); if (string.IsNullOrEmpty(Version)) { Version = InformationalVersion; } CompileDate = AssemblyUtilities.GetLinkerTimestamp(asm); }