Пример #1
0
        /// <summary>
        /// 设置自启动
        /// </summary>
        /// <param name="p_win"></param>
        internal static void SetAutoStart(Win p_win)
        {
            if (p_win == null)
            {
                return;
            }

            if (!Kit.IsPhoneUI)
            {
                Tabs tabs = (Tabs)p_win.GetValue(Win.MainTabsProperty);
                if (tabs != null &&
                    tabs.Items.Count > 0 &&
                    ((Tab)tabs.Items[0]).Content is Win win)
                {
                    // 设置主区窗口为自启动
                    p_win = win;
                }
            }

            AutoStartInfo info = new AutoStartInfo();

            info.WinType = p_win.GetType().AssemblyQualifiedName;
            info.Title   = p_win.Title;
            info.Icon    = p_win.Icon.ToString();
            if (p_win.Params != null)
            {
                info.Params     = JsonSerializer.Serialize(p_win.Params, JsonOptions.UnsafeSerializer);
                info.ParamsType = p_win.Params.GetType().AssemblyQualifiedName;
            }
            AtState.SaveAutoStart(info);
            Kit.Msg(string.Format("{0}已设置自启动!", p_win.Title));
        }