none
SL创建导航栏的疑惑 RRS feed

答案

  • m_gridFormMain.Children.Clear(); //清空容器内容

                System.Type typeLoadUserControl = typeof(Page).Assembly.GetType(strNavigate, false); //获取要加载UserControl的类型 strNavigate 参数为类型字符串格式为 项目名.类名

                System.Windows.UIElement uielementLoadUserControl = System.Activator.CreateInstance(typeLoadUserControl, aobjParam) as System.Windows.UIElement; //通过刚刚建立的类型创建UserControl实例 aobjParam 为要传递到UserControl的参数

                m_gridFormMain.Children.Add(uielementLoadUserControl); //将UserControl加入到容器
            }

     

    2008年11月2日 10:54

全部回复

  • 如果你的XAML不大的化可以放到一个工程里编译,我的项目就类似于这种方式.以下是我的代码你可以参考一下.

     


            public static void Navigate(string strNavigate, object[] aobjParam)
            {
                m_gridFormMain.Children.Clear();

                System.Type typeLoadUserControl = typeof(Page).Assembly.GetType(strNavigate, false);

                System.Windows.UIElement uielementLoadUserControl = System.Activator.CreateInstance(typeLoadUserControl, aobjParam) as System.Windows.UIElement;

                m_gridFormMain.Children.Add(uielementLoadUserControl);
            }

    2008年11月2日 0:20
  •  

    谢谢~~只是能否添加一下注释,我是初学者,谢谢^_^
    2008年11月2日 8:26
  • m_gridFormMain.Children.Clear(); //清空容器内容

                System.Type typeLoadUserControl = typeof(Page).Assembly.GetType(strNavigate, false); //获取要加载UserControl的类型 strNavigate 参数为类型字符串格式为 项目名.类名

                System.Windows.UIElement uielementLoadUserControl = System.Activator.CreateInstance(typeLoadUserControl, aobjParam) as System.Windows.UIElement; //通过刚刚建立的类型创建UserControl实例 aobjParam 为要传递到UserControl的参数

                m_gridFormMain.Children.Add(uielementLoadUserControl); //将UserControl加入到容器
            }

     

    2008年11月2日 10:54