修复TagInputBUG
调整输入框添加的位置,存放在构造器中
This commit is contained in:
@@ -49,8 +49,11 @@ public class TagInput : TemplatedControl
|
|||||||
public TagInput()
|
public TagInput()
|
||||||
{
|
{
|
||||||
_textBox = new TextBox();
|
_textBox = new TextBox();
|
||||||
_textBox.AddHandler(InputElement.KeyDownEvent, OnTextBoxKeyDown, RoutingStrategies.Tunnel);
|
_textBox.AddHandler(KeyDownEvent, OnTextBoxKeyDown, RoutingStrategies.Tunnel);
|
||||||
Items = new AvaloniaList<object>();
|
Items = new AvaloniaList<object>
|
||||||
|
{
|
||||||
|
_textBox
|
||||||
|
};
|
||||||
Tags = new ObservableCollection<string>();
|
Tags = new ObservableCollection<string>();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -123,7 +126,6 @@ public class TagInput : TemplatedControl
|
|||||||
{
|
{
|
||||||
base.OnApplyTemplate(e);
|
base.OnApplyTemplate(e);
|
||||||
_itemsControl = e.NameScope.Find<ItemsControl>(PART_ItemsControl);
|
_itemsControl = e.NameScope.Find<ItemsControl>(PART_ItemsControl);
|
||||||
Items.Add(_textBox);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private void OnInputThemePropertyChanged(AvaloniaPropertyChangedEventArgs args)
|
private void OnInputThemePropertyChanged(AvaloniaPropertyChangedEventArgs args)
|
||||||
@@ -147,10 +149,9 @@ public class TagInput : TemplatedControl
|
|||||||
{
|
{
|
||||||
for (int i = 0; i < newTags.Count; i++)
|
for (int i = 0; i < newTags.Count; i++)
|
||||||
{
|
{
|
||||||
Items.Add(newTags[i]);
|
Items.Insert(Items.Count - 1, newTags[i]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (oldTags is INotifyCollectionChanged inccold)
|
if (oldTags is INotifyCollectionChanged inccold)
|
||||||
{
|
{
|
||||||
inccold.CollectionChanged-= OnCollectionChanged;
|
inccold.CollectionChanged-= OnCollectionChanged;
|
||||||
|
|||||||
Reference in New Issue
Block a user