當出現特定事件時,我想打開一個新窗體(使用ShowDialog),並且在打開此對話框時,我想忽略所有傳入的類似事件/出列。僅在事件中打開一個表單
有可能嗎?怎麼樣?
我的活動方法,其中我嘗試管理就像是:
void barcode_Scanned(object sender, string value)
{
if(value.StartsWith("d")
{
// ShowDialog
}
}
場景:
- 掃描條碼
- otherForm.ShowDialog()
- 掃描的條形碼 - >忽略,因爲對話框已打開
- 條形碼掃描 - >忽略,因爲對話框已打開
- otherForm關閉
- 掃描條碼
- otherForm.ShowDialog() - >可能的,因爲以前關閉
謝謝!
,因爲,直到對話框打開,事件排隊,依次調用,所以一旦對話框關閉,如果一個引發事件,對話框將直接打開,而不是被忽略 –
不工作似乎掃描器爲我排隊,這是一個API設備問題。謝謝... –