簡體   English   中英

如何添加Combobox作為LabelMenu項目進行標簽控制。 WPF應用程序

[英]How to add Combobox as ContextMenu Item for Label Control. WPF app

我想在后面的代碼中為wpf應用程序中的某些標簽控件添加組合框作為ContextMenu項。 我該怎么做? 我在網上搜索了很多,但沒有任何成效。

以下代碼只是關於如何構建ContextMenu的概念證明。 它將為您提供一個ComboBox作為MenuItem的內容。

<Label Content="label with context menu">
    <Label.ContextMenu>
        <ContextMenu>
            <MenuItem Header="menu 1">
                <ComboBox>
                    <ComboBoxItem Content="combo 1" IsSelected="True" />
                    <ComboBoxItem Content="combo 2" />
                    <ComboBoxItem Content="combo 3" />
                </ComboBox>
            </MenuItem>
        </ContextMenu>
    </Label.ContextMenu>
</Label>

另一種選擇......這允許ComboBox在您進行右鍵單擊時直接顯示。 將其復制並粘貼到KAXAML中以查看它是否正常工作。

<Page
  xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
  xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
  <Grid>  
  <Label Content="Some Label">
  <Label.ContextMenu>
  <ContextMenu>
  <ContextMenu.Template>
  <ControlTemplate>
  <ComboBox SelectedIndex="0">
  <ComboBoxItem>One</ComboBoxItem>
  <ComboBoxItem>Two</ComboBoxItem>
  <ComboBoxItem>Three</ComboBoxItem>
  </ComboBox>
  </ControlTemplate>
  </ContextMenu.Template>
  </ContextMenu>
  </Label.ContextMenu>
  </Label>
  </Grid>
</Page>

在此輸入圖像描述

我得到了解決方案,我們可以這樣做:

        ContextMenu contextmenu = new ContextMenu();
        ComboBox CmbColorMenu = new ComboBox();
        CmbColorMenu.ItemsSource = FontColors;// FontColors is list<objects>
        CmbColorMenu.DisplayMemberPath = "Text";
        contextmenu.Items.Add(CmbColorMenu);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM