コード例 #1
0
ファイル: Style.cs プロジェクト: mildsauce45/UPF
		internal void Initialize(Control control)
		{
			if (control == null || Setters.Count > 0)
				return;

			foreach (var setter in xmlNode.ChildNodes.OfType<XmlNode>().Where(x => x.LocalName == "Setter"))
			{
				var propertyName = setter.Attributes["Property"];
				if (propertyName != null && !string.IsNullOrEmpty(propertyName.Value))
				{
					var dp = control.GetDependencyProperty(propertyName.Value);
					if (dp == null)
						continue;

					var valueAttr = setter.Attributes["Value"];
					if (valueAttr == null || string.IsNullOrEmpty(valueAttr.Value))
						continue;

					var value = LoadValue(valueAttr.Value, dp.PropType);

					Setters.Add(dp, value);
				}
			}
		}
コード例 #2
0
 public void AddChild(Control child)
 {
     Child = child;
 }
コード例 #3
0
 public ContentControl(Control child)
 {
     Child = child;
 }
コード例 #4
0
ファイル: Control.cs プロジェクト: mildsauce45/UPF
		internal virtual void InvalidateLayout(Control source)
		{
			Size = null;
			Location = null;

			if (this != source)
				return;

			// Now let's invalidate the entire branch of this tree so we can properly recalculate/redraw
			var ctrl = Parent;
			while (ctrl != null)
			{
				ctrl.InvalidateLayout(this);
				ctrl = ctrl.Parent;
			}
		}
コード例 #5
0
ファイル: Frame.cs プロジェクト: mildsauce45/UPF
		public void AddControl(Control control)
		{
			controls.Add(control);
		}
コード例 #6
0
ファイル: Style.cs プロジェクト: mildsauce45/UPF
		internal void Apply(Control control)
		{
			foreach (var key in Setters.Keys)
				TargetType.GetProperty(key.Name).SetValue(control, Setters[key], null);
		}
コード例 #7
0
ファイル: ContentControl.cs プロジェクト: mildsauce45/UPF
        internal override void InvalidateLayout(Control source)
        {
            base.InvalidateLayout(source);

            Child.InvalidateLayout(source);
        }
コード例 #8
0
ファイル: ContentControl.cs プロジェクト: mildsauce45/UPF
 public void AddChild(Control child)
 {
     Child = child;
     child.Parent = this;
 }
コード例 #9
0
ファイル: ContentControl.cs プロジェクト: mildsauce45/UPF
 public ContentControl(Control child)
 {
     AddChild(child);
 }