Initial Commit

This commit is contained in:
2024-02-23 00:46:06 -05:00
commit 2bbedc0178
470 changed files with 46035 additions and 0 deletions

View File

@@ -0,0 +1,53 @@

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows.Markup;
using System.Resources;
namespace Microsoft.Research.DynamicDataDisplay.MarkupExtensions
{
/// <summary>
/// Represents a markup extension, which allows to get an access to application resource files.
/// </summary>
[MarkupExtensionReturnType(typeof(string))]
public class ResourceExtension : MarkupExtension
{
/// <summary>
/// Initializes a new instance of the <see cref="ResourceExtension"/> class.
/// </summary>
public ResourceExtension() { }
private string resourceKey;
//[ConstructorArgument("resourceKey")]
public string ResourceKey
{
get { return resourceKey; }
set
{
if (resourceKey == null)
throw new ArgumentNullException("resourceKey");
resourceKey = value;
}
}
/// <summary>
/// Initializes a new instance of the <see cref="ResourceExtension"/> class.
/// </summary>
/// <param name="resourceKey">The resource key.</param>
public ResourceExtension(string resourceKey)
{
if (resourceKey == null)
throw new ArgumentNullException("resourceKey");
this.resourceKey = resourceKey;
}
public override object ProvideValue(IServiceProvider serviceProvider)
{
return Strings.UIResources.ResourceManager.GetString(resourceKey);
}
}
}

View File

@@ -0,0 +1,23 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows.Data;
using System.Windows;
namespace Microsoft.Research.DynamicDataDisplay.MarkupExtensions
{
public class SelfBinding : Binding
{
public SelfBinding()
{
RelativeSource = new RelativeSource { Mode = RelativeSourceMode.Self };
}
public SelfBinding(string propertyPath)
: this()
{
Path = new PropertyPath(propertyPath);
}
}
}

View File

@@ -0,0 +1,22 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows.Data;
namespace Microsoft.Research.DynamicDataDisplay.MarkupExtensions
{
public class TemplateBinding : Binding
{
public TemplateBinding()
{
RelativeSource = new RelativeSource { Mode = RelativeSourceMode.TemplatedParent };
}
public TemplateBinding(string propertyPath)
: this()
{
Path = new System.Windows.PropertyPath(propertyPath);
}
}
}

View File

@@ -0,0 +1,33 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows.Markup;
using System.Windows;
using System.ComponentModel;
namespace Microsoft.Research.DynamicDataDisplay.MarkupExtensions
{
[EditorBrowsable(EditorBrowsableState.Never)]
public class XbapConditionalExpression : MarkupExtension
{
public XbapConditionalExpression() { }
public XbapConditionalExpression(object value)
{
this.Value = value;
}
[ConstructorArgument("value")]
public object Value { get; set; }
public override object ProvideValue(IServiceProvider serviceProvider)
{
#if RELEASEXBAP
return null;
#else
return ((ResourceDictionary)Application.LoadComponent(new Uri("/DynamicDataDisplay;component/Themes/Generic.xaml", UriKind.Relative)))[Value];
#endif
}
}
}