Skip to content
This repository was archived by the owner on Jul 28, 2024. It is now read-only.

Commit 41b48ea

Browse files
committed
1 parent 9d65522 commit 41b48ea

2 files changed

Lines changed: 17 additions & 11 deletions

File tree

src/LXLDevHelper/Views/EditFunctionWIndow.xaml.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -92,7 +92,7 @@ private void SelectTypeComboBox_SelectionChanged(object sender, SelectionChanged
9292
var me = (ComboBox)sender;
9393
if (me.SelectedItem?.ToString() == "Function")
9494
{
95-
var result = EditFunction("Function");
95+
var result = EditFunction(me.Text);
9696
((ViewModels.LXLFuncParamsBase)me.Tag).ParamType = result;
9797
}
9898
}

src/LXLDevHelper/Views/MainContent.xaml.cs

Lines changed: 16 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -348,22 +348,28 @@ private void PropertyNameTextBox_GotFocus(object sender, RoutedEventArgs e)
348348
private void SelectTypeMenuItem_Click(object sender, RoutedEventArgs e)
349349
{
350350
var me = (MenuItem)sender;
351-
if (me.GetType() == typeof(ViewModels.LXLFuncParams))
351+
var tag = me.Tag;
352+
var tagType = tag.GetType();
353+
if (tagType == typeof(ViewModels.LXLFuncParams))
352354
{
353-
var text = ((ViewModels.LXLFuncParams)me.Tag).ParamType;
355+
var t = (ViewModels.LXLFuncParams)tag;
356+
var text = t.ParamType;
354357
var result = EditFunction(text);
355-
((ViewModels.LXLFuncParams)me.Tag).ParamType = result;
358+
t.ParamType = result;
356359
}
357-
else if (me.GetType() == typeof(ViewModels.LXLFunction))
360+
else if (tagType == typeof(ViewModels.LXLFunction))
358361
{
359-
var text = ((ViewModels.LXLFunction)me.Tag).ReturnType;
362+
var t = (ViewModels.LXLFunction)tag;
363+
var text = t.ReturnType;
360364
var result = EditFunction(text);
361-
((ViewModels.LXLFunction)me.Tag).ReturnType = result;
362-
} else if (me.GetType() == typeof(ViewModels.LXLProperty))
365+
t.ReturnType = result;
366+
}
367+
else if (tagType == typeof(ViewModels.LXLProperty))
363368
{
364-
var text = ((ViewModels.LXLProperty)me.Tag).PropertyType;
369+
var t = (ViewModels.LXLProperty)tag;
370+
var text = t.PropertyType;
365371
var result = EditFunction(text);
366-
((ViewModels.LXLProperty)me.Tag).PropertyType = result;
372+
t.PropertyType = result;
367373
}
368374
}
369375
private void SelectTypeComboBox_SelectionChanged(object sender, SelectionChangedEventArgs e)
@@ -372,7 +378,7 @@ private void SelectTypeComboBox_SelectionChanged(object sender, SelectionChanged
372378
if (me.SelectedItem?.ToString() == "Function")
373379
{
374380
//e.Handled = true;
375-
var result = EditFunction(me.Text);//还未更新的Text
381+
var result = EditFunction(me.Text);//还未因选择而更改的Text
376382
Dispatcher.InvokeAsync(() => me.Text = result);//奇怪的bug,事件内直接改没效果,所以只能post到事件完成后运行
377383
}
378384
}

0 commit comments

Comments
 (0)