本文整理汇总了C#中System.Windows.Freezable.GetValue方法的典型用法代码示例。如果您正苦于以下问题:C# Freezable.GetValue方法的具体用法?C# Freezable.GetValue怎么用?C# Freezable.GetValue使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类System.Windows.Freezable
的用法示例。
在下文中一共展示了Freezable.GetValue方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: FreezableBasicTest
public void FreezableBasicTest()
{
int resourcesChangedCount = 0;
object resourceValue;
Freezable freezable = new Freezable();
freezable.ResourcesChanged += (sender, e) => resourcesChangedCount++;
FrameworkElement element = new FrameworkElement();
element.DataContext = "data-context";
element.Resources = new ResourceDictionary();
element.Resources.Add("key1", "value1");
Assert.AreNotEqual("data-context", freezable.GetValue(FrameworkElement.DataContextProperty));
Assert.IsFalse(freezable.TryGetResource("key1", out resourceValue));
element.SetValue(ValueProperty, freezable);
Assert.AreEqual("data-context", freezable.GetValue(FrameworkElement.DataContextProperty));
Assert.AreEqual(1, resourcesChangedCount);
Assert.IsTrue(freezable.TryGetResource("key1", out resourceValue));
Assert.AreEqual("value1", resourceValue);
element.Resources.Add("key2", "value2");
Assert.AreEqual(2, resourcesChangedCount);
Assert.IsTrue(freezable.TryGetResource("key2", out resourceValue));
Assert.AreEqual("value2", resourceValue);
}
示例2: FreezableCollectionBasicTest
public void FreezableCollectionBasicTest()
{
int resources1ChangedCount = 0;
object resourceValue;
Freezable freezable1 = new Freezable();
freezable1.ResourcesChanged += (sender, e) => resources1ChangedCount++;
FreezableCollection<Freezable> freezableCollection = new FreezableCollection<Freezable> { freezable1 };
FrameworkElement element = new FrameworkElement();
element.DataContext = "data-context";
element.Resources = new ResourceDictionary();
element.Resources.Add("key1", "value1");
Assert.IsNull(freezable1.GetValue(FrameworkElement.DataContextProperty));
Assert.IsFalse(freezable1.TryGetResource("key1", out resourceValue));
element.SetValue(ValueProperty, freezableCollection);
Assert.AreEqual("data-context", freezable1.GetValue(FrameworkElement.DataContextProperty));
Assert.AreEqual(2, resources1ChangedCount);
Assert.IsTrue(freezable1.TryGetResource("key1", out resourceValue));
Assert.AreEqual("value1", resourceValue);
Freezable freezable2 = new Freezable();
freezableCollection.Add(freezable2);
Assert.AreEqual("data-context", freezable2.GetValue(FrameworkElement.DataContextProperty));
Assert.IsTrue(freezable2.TryGetResource("key1", out resourceValue));
Assert.AreEqual("value1", resourceValue);
freezableCollection.Clear();
Assert.AreNotEqual("data-context", freezable1.GetValue(FrameworkElement.DataContextProperty));
Assert.AreNotEqual("data-context", freezable2.GetValue(FrameworkElement.DataContextProperty));
Assert.AreEqual(3, resources1ChangedCount);
Assert.IsFalse(freezable1.TryGetResource("key1", out resourceValue));
Assert.IsFalse(freezable2.TryGetResource("key1", out resourceValue));
}