一開始想根據Button的Tag屬性判斷一些操作,於是寫了
if (btn1.Tag.ToString().StartsWith("Menu") || btn2.Tag.ToString().StartsWith("Submenu")) return;
但是Tag屬性可能為空,於是給Tag加上判空處理
if (btn1.Tag?.ToString().StartsWith("Menu") || btn2.Tag?.ToString().StartsWith("Submenu")) return;
這樣又引發了語法錯誤。
Severity Code Description Project File Line Suppression State Error CS0019 Operator '||' cannot be applied to operands of type 'bool?' and 'bool?'
解決方案
if ((btn1.Tag?.ToString().StartsWith("Menu") ?? false) || (btn2.Tag?.ToString().StartsWith("Submenu") ?? false))
return;