none
怎样设置ComboBox展开时的高度 RRS feed

  • 问题

  •  当用点击ComboBox时,怎样设置ComboBox展开的高度或者设置显示几项,当我设置ComboBox的Width="80" Height="80"设置MaxDropDownHeight="200" ,当点击时有时会出异常,Layout cycle detected.  Layout could not complete.不知道怎样能解决我的问题。

    前台代码

       <StackPanel Background="LightBlue" HorizontalAlignment="Center" VerticalAlignment="Center" Width="300" Height="300">
                <ComboBox Name="com1" HorizontalAlignment="Center" MaxDropDownHeight="200"  VerticalAlignment="Center" Width="80" Height="80" />
            </StackPanel>

    后台数据源设置如下

    for (int i = 2012; i < 2040; i++)
                {
                    this.com1.Items.Add(i);
                   
                }

    2014年1月24日 7:09

全部回复

  • 你好,如果你的程式是在WinRT上執行,唯一的辦法是把 "MaxDropDownHeight" 去掉,在WinRT上執行的話,只要有這屬性,無論是什麼的值,也會產生Error。

    你試試看,再回來告訴我們結果如何,謝謝。


    大家一齊探討、學習和研究,謝謝!
    MCSD, MCAD, MCSE+I, MCDBA, MCDST, MCSA, MCTS, MCITP, MCPD,
    MCT, Microsoft Community Star(TW & HK),
    Microsoft MVP for VB.NET since 2003
    My MSMVP Blog

    2014年1月24日 8:04
  • 是的,但是在vs2013中是没有问题的,既然不能设置那个属性,那么我们怎么控制展开的高度
    • 已编辑 runqian 2014年1月24日 8:57
    2014年1月24日 8:57
  • 你好,那應該算是VS2012的bug,你只可以用VS2013去開發了。

    謝謝。

     


    大家一齊探討、學習和研究,謝謝!
    MCSD, MCAD, MCSE+I, MCDBA, MCDST, MCSA, MCTS, MCITP, MCPD,
    MCT, Microsoft Community Star(TW & HK),
    Microsoft MVP for VB.NET since 2003
    My MSMVP Blog

    2014年1月24日 9:20
  • Hi runqian,

    您的代码在我的VS2012中测试没有异常啊……建议您升级VS2012至Update3试试。

    一般Layout cycle detected.  Layout could not complete这个错误是由于布局上的控件超过系统能承载的数量所致。

    --James


    <THE CONTENT IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, WHETHER EXPRESS OR IMPLIED>
    Thanks
    MSDN Community Support

    Please remember to "Mark as Answer" the responses that resolved your issue. It is a common way to recognize those who have helped you, and makes it easier for other visitors to find the resolution later.

    2014年1月24日 9:30
    版主
  • 我就在界面上加一个ComboBox控件,其他的什么都没有,我在vs2013中也没有异常,怎样解决ComboBox的展开高度呢?
    2014年1月24日 9:36