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

Commit 62c7040

Browse files
committed
fix
1 parent 6fbc449 commit 62c7040

3 files changed

Lines changed: 25 additions & 9 deletions

File tree

src/LXLDevHelper/Views/EditFunctionWIndow.xaml.cs

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -79,9 +79,10 @@ private void DeleteParams_Click(object sender, RoutedEventArgs e)
7979
}
8080
private void SelectTypeMenuItem_Click(object sender, RoutedEventArgs e)
8181
{
82-
var text = ((ViewModels.LXLFuncParamsBase)((MenuItem)sender).Tag).ParamType;
82+
var me = (MenuItem)sender;
83+
var text = ((ViewModels.LXLFuncParamsBase)me.Tag).ParamType;
8384
var result = EditFunction(text);
84-
((ViewModels.LXLFuncParamsBase)((MenuItem)sender).Tag).ParamType = result;
85+
((ViewModels.LXLFuncParamsBase)me.Tag).ParamType = result;
8586

8687
}
8788
private void SelectTypeComboBox_SelectionChanged(object sender, SelectionChangedEventArgs e)

src/LXLDevHelper/Views/MainContent.xaml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -163,7 +163,7 @@
163163
</ComboBox.ToolTip>
164164
<ComboBox.ContextMenu>
165165
<ContextMenu>
166-
<MenuItem Tag="{Binding CurrentFunc.ReturnType}" Header="编辑匿名函数" Click="SelectTypeMenuItem_Click"/>
166+
<MenuItem Tag="{Binding CurrentFunc.Me}" Header="编辑匿名函数" Click="SelectTypeMenuItem_Click"/>
167167
</ContextMenu>
168168
</ComboBox.ContextMenu>
169169
</ComboBox>
@@ -205,7 +205,7 @@
205205
</ComboBox.ToolTip>
206206
<ComboBox.ContextMenu>
207207
<ContextMenu>
208-
<MenuItem Tag="{Binding ParamType}" Header="编辑匿名函数" Click="SelectTypeMenuItem_Click"/>
208+
<MenuItem Tag="{Binding Me}" Header="编辑匿名函数" Click="SelectTypeMenuItem_Click"/>
209209
</ContextMenu>
210210
</ComboBox.ContextMenu>
211211
</ComboBox>
@@ -249,7 +249,7 @@
249249
</ComboBox.ToolTip>
250250
<ComboBox.ContextMenu>
251251
<ContextMenu>
252-
<MenuItem Tag="{Binding CurrentProperty.PropertyType}" Header="编辑匿名函数" Click="SelectTypeMenuItem_Click"/>
252+
<MenuItem Tag="{Binding CurrentProperty.Me}" Header="编辑匿名函数" Click="SelectTypeMenuItem_Click"/>
253253
</ContextMenu>
254254
</ComboBox.ContextMenu>
255255
</ComboBox>

src/LXLDevHelper/Views/MainContent.xaml.cs

Lines changed: 19 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -347,17 +347,32 @@ private void PropertyNameTextBox_GotFocus(object sender, RoutedEventArgs e)
347347

348348
private void SelectTypeMenuItem_Click(object sender, RoutedEventArgs e)
349349
{
350-
var text = (string)((MenuItem)sender).Tag;
351-
var result = EditFunction(text);
352-
Dispatcher.InvokeAsync(() => ((MenuItem)sender).Tag = result);//奇怪的bug,事件内直接改没效果,所以只能post到事件完成后运行
350+
var me = (MenuItem)sender;
351+
if (me.GetType() == typeof(ViewModels.LXLFuncParams))
352+
{
353+
var text = ((ViewModels.LXLFuncParams)me.Tag).ParamType;
354+
var result = EditFunction(text);
355+
((ViewModels.LXLFuncParams)me.Tag).ParamType = result;
356+
}
357+
else if (me.GetType() == typeof(ViewModels.LXLFunction))
358+
{
359+
var text = ((ViewModels.LXLFunction)me.Tag).ReturnType;
360+
var result = EditFunction(text);
361+
((ViewModels.LXLFunction)me.Tag).ReturnType = result;
362+
} else if (me.GetType() == typeof(ViewModels.LXLProperty))
363+
{
364+
var text = ((ViewModels.LXLProperty)me.Tag).PropertyType;
365+
var result = EditFunction(text);
366+
((ViewModels.LXLProperty)me.Tag).PropertyType = result;
367+
}
353368
}
354369
private void SelectTypeComboBox_SelectionChanged(object sender, SelectionChangedEventArgs e)
355370
{
356371
var me = (ComboBox)sender;
357372
if (me.SelectedItem?.ToString() == "Function")
358373
{
359374
//e.Handled = true;
360-
var result = EditFunction("Function");
375+
var result = EditFunction(me.Text);//还未更新的Text
361376
Dispatcher.InvokeAsync(() => me.Text = result);//奇怪的bug,事件内直接改没效果,所以只能post到事件完成后运行
362377
}
363378
}

0 commit comments

Comments
 (0)