• Silverlight 4.0 Accordion 解决ScrollViewer 的问题


    Silverlight 4.0 开发中,使用Accordion ,在Accordion 中动态添加AccordionItem ,可以设置AccordionItem 的个数,但很难解决ScrollViewer的问题 ,即外框出现滚动条的问题

    查了几个国外的网站都没有解决办法!~经常会碰到许多奇怪的问题!~在这里分析下我的解决方案!~

              <ScrollViewer Margin="0" Grid.Row="1">
                                <toolkit:Accordion Grid.Row="1" SelectionChanged="UserAcc_SelectionChanged" Name="UserAcc" VerticalAlignment="Stretch" HorizontalAlignment="Stretch"  AccordionButtonStyle="{StaticResource AccordionButtonStyle1}">
                                </toolkit:Accordion>
                </ScrollViewer>

    在Accordion 外套一个ScrollViewer ,添加SelectionChanged的方法

            /// <summary>
            /// 获取所选择,主要处理Accordion的高度和AccordionItem的高度
            /// </summary>
            /// <param name="sender"></param>
            /// <param name="e"></param>
            private void UserAcc_SelectionChanged(object sender, SelectionChangedEventArgs e)
            {
                try
                {
                    AccordionItem tem = this.UserAcc.SelectedItem as AccordionItem;
                    if (null != tem)
                    {
                        ///根据AccordionItem 的个数来设置高度
                        this.UserAcc.Height = 600 + this.UserAcc.Items.Count * 32;//600,32 这两个数字是根据页面设计实际大大小来定的
                        tem.MaxHeight = 610;//设置最大高度,解决内部出现空白的BUG
                        // tem.ContentTargetSize 可以测试内部的实际高度
                        tem.UpdateLayout();
                    }
                    else
                    {
                        if (this.UserAcc.Items.Count < 15)
                        {
                            this.UserAcc.Height = 500;
                        }
                        else
                        {
                            this.UserAcc.Height = this.UserAcc.Items.Count * 32 + 50;
                        }
                    }
                }
                catch (Exception ex)
                {
                    MessageBox.Show(ex.Message);
                }
            }

  • 相关阅读:
    PHP中cookie和会话编程
    PHPweb应用程序开发技巧
    javascript中DOM编程
    PHP动态创建Web站点
    在IE下FLASH背景透明而在FF下不透明的解决方法
    ThinkPHP返回插入记录的id号
    PHP面向对象编程
    PHP smarty编程总结
    Linux用户权限设置
    无法载入 mcrypt 扩展,请检查 PHP 配置
  • 原文地址:https://www.cnblogs.com/wq3if2in/p/1992555.html
Copyright © 2020-2023  润新知