WPF ComboBox隐藏(禁用)下拉按钮以编程方式

 张嫱的小屋_133 发布于 2023-02-06 14:36

我想知道如何以编程方式禁用ComboBox下拉按钮。我见过很多类似的主题,但是所有这些都有XAML解决方案。

顺便说一句,如果有人知道如何禁用所有ComboBox控件设计,并且只显示项目模板,那么它也会有所帮助。

更新

它是我的XAML定义


还有我怎么使用它:

String text = "dorf";
BitmapImage image = new BitmapImage(new Uri("http://img88.imageshack.us/img88/4351/butchermi4.png"));
lang_ComboBox.Width = 100;
lang_ComboBox.Height = 30;
Grid sp;
for (int i = 0; i < 5; i++)
{
    ColumnDefinition gridCol1 = new ColumnDefinition();
    gridCol1.Width = new GridLength(30.0);
    ColumnDefinition gridCol2 = new ColumnDefinition();
    gridCol2.Width = new GridLength(70.0);
    sp = new Grid()
    {
        Width = 100,
        Height = 30
    };
    Image im = new Image()
    {
        Source = image,
        Width = 25,
        Height = 25
    };
    Label la = new Label() 
    { 
        Content = text
    };
    sp.ColumnDefinitions.Add(gridCol1);
    sp.ColumnDefinitions.Add(gridCol2);
    Grid.SetColumn(im, 0);
    Grid.SetColumn(la, 1);
    sp.Children.Add(la);
    sp.Children.Add(im);
    lang_ComboBox.Items.Add(sp);
}

更新2 嗯,我现在明白了,我用错了字。它应该是“隐藏”控件设计,并且仍然可以从列表中进行选择。不好意思 但是我知道如何用Anatoliy Nokolaev的代码解决它。隐藏我使用的控件设计:

ToggleButton dropDownButton = GetFirstChildOfType(lang_ComboBox);
dropDownButton.Visibility = System.Windows.Visibility.Collapsed;

有害的行为现在只是我无法显示组合框下拉菜单,但我将通过添加点击事件以编程方式调用它,应该会很好。

如果有任何最简单的方法可以告诉我:)。

撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有