[英]How to bring up a box (listbox) from a button click
我正在做這個項目,需要列出所有SQL本地和遠程服務器。 因為查找遠程服務器需要時間,所以在大多數情況下,我將在下拉組合框中列出本地服務器,以便用戶可以從那里選擇一個實例。 這部分我沒有問題。 但是,我還需要列出所有遠程服務器,所以我認為一種聰明的方法是通過組合框旁邊的瀏覽按鈕,因此用戶如果要選擇遠程SQL實例,可以單擊它。 我可以找到所有沒有問題的遠程SQL實例,並將它們放在ObservableCollection變量中。 現在的問題是,如何調出其中包含所有遠程服務器名稱的列表框? 我假設我需要兩部分代碼:一個用於xaml,一個是click事件背后的C#代碼。 任何幫助是極大的贊賞!
我想出了如何從按鈕中打開上下文菜單的方法:
這是xaml:
<Button.ContextMenu>
<ContextMenu Name="BrowseButtonContext"
ItemsSource="{Binding RemoteSqlServers}"
MouseDown="Select_Click">
</ContextMenu>
</Button.ContextMenu>
</Button>
這是代碼:
private void BrowseButton_Click(object sender, RoutedEventArgs e)
{
System.Windows.Controls.ContextMenu cm = BrowseButtonContext as System.Windows.Controls.ContextMenu;
cm.PlacementTarget = sender as System.Windows.Controls.Button;
cm.IsOpen = true;
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.