В книге Петцольда есть следующий пример:
using System;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Input;
using System.Windows.Media;
namespace Petzold.SetSpaceProperty
{
public class SpaceWindow: Window
{
public static readonly DependencyProperty SpaceProperty;
public int Space
{
set
{
SetValue(SpaceButton.SpaceProperty, value);
}
get
{
return (int)GetValue(SpaceButton.SpaceProperty);
}
}
static SpaceWindow()
{
FrameworkPropertyMetadata metadata = new FrameworkPropertyMetadata() { Inherits = true};
SpaceProperty = SpaceButton.SpaceProperty.AddOwner(typeof(SpaceWindow));
SpaceButton.SpaceProperty.OverrideMetadata(typeof(SpaceWindow), metadata);
Console.WriteLine(SpaceButton.SpaceProperty.GetMetadata(typeof(SpaceWindow)).DefaultValue);
Console.WriteLine(SpaceProperty.GetMetadata(typeof(SpaceWindow));
}
}
}
Подскажите, пожалуйста, зачем нужен метод AddOwner у зависимых свойств и в чём разница, между вызовом этого метода и переопределение метаданных для свойства зависимости? Если закомментировать вызов данного метода, программа всё равно выполняется.
using System;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Input;
using System.Windows.Media;
namespace Petzold.SetSpaceProperty
{
public class SpaceWindow: Window
{
//public static readonly DependencyProperty SpaceProperty;
public int Space
{
set
{
SetValue(SpaceButton.SpaceProperty, value);
}
get
{
return (int)GetValue(SpaceButton.SpaceProperty);
}
}
static SpaceWindow()
{
FrameworkPropertyMetadata metadata = new FrameworkPropertyMetadata() { Inherits = true};
//SpaceProperty = SpaceButton.SpaceProperty.AddOwner(typeof(SpaceWindow));
SpaceButton.SpaceProperty.OverrideMetadata(typeof(SpaceWindow), metadata);
Console.WriteLine(SpaceButton.SpaceProperty.GetMetadata(typeof(SpaceWindow)).DefaultValue);
//Console.WriteLine(SpaceProperty.GetMetadata(typeof(SpaceWindow));
}
}
}
Оборудование для ресторана: новинки профессиональной кухонной техники
Частный дом престарелых в Киеве: комфорт, забота и профессиональный уход
На вебстранице показан код парсера в консолиХотелось бы научиться получать результат парсинга сайта в textbox формы
Как подружить Gulp и его browser-sync с PHP? ЧТО НАДО ПОМЕНЯТЬ В gulpfilejs чтобы он обновлял страницу при изменении php