feat: fix container default value issue.

This commit is contained in:
rabbitism
2024-01-08 21:06:43 +08:00
parent b90b721e4b
commit 755e729518
3 changed files with 14 additions and 4 deletions

View File

@@ -80,6 +80,7 @@
Content="Step 5" Content="Step 5"
Header="第五步" Header="第五步"
Mode="Separate" Mode="Separate"
TimeFormat="yyyy-MM-dd"
Type="Error" /> Type="Error" />
</u:Timeline> </u:Timeline>
</WrapPanel> </WrapPanel>

View File

@@ -150,10 +150,11 @@ public class Timeline: ItemsControl
{ {
t.Bind(TimelineItem.TimeProperty, TimeMemberBinding); t.Bind(TimelineItem.TimeProperty, TimeMemberBinding);
} }
t.SetCurrentValue(TimelineItem.TimeFormatProperty, TimeFormat);
t.SetCurrentValue(TimelineItem.IconTemplateProperty, IconTemplate); t.SetIfUnset(TimelineItem.TimeFormatProperty, TimeFormat);
t.SetCurrentValue(HeaderedContentControl.HeaderTemplateProperty, ItemTemplate); t.SetIfUnset(TimelineItem.IconTemplateProperty, IconTemplate);
t.SetCurrentValue(ContentControl.ContentTemplateProperty, DescriptionTemplate); t.SetIfUnset(HeaderedContentControl.HeaderTemplateProperty, ItemTemplate);
t.SetIfUnset(ContentControl.ContentTemplateProperty, DescriptionTemplate);
} }
} }

View File

@@ -190,4 +190,12 @@ public class TimelineItem: HeaderedContentControl
_rootGrid.ColumnDefinitions[1].Width = new GridLength(mid??0); _rootGrid.ColumnDefinitions[1].Width = new GridLength(mid??0);
_rootGrid.ColumnDefinitions[2].Width = new GridLength(right??0); _rootGrid.ColumnDefinitions[2].Width = new GridLength(right??0);
} }
internal void SetIfUnset<T>(AvaloniaProperty<T> property, T value)
{
if (!IsSet(property))
{
SetCurrentValue(property, value);
}
}
} }