Exemplo n.º 1
0
        /// <summary>
        /// 主启动界面,判断是否有数据库
        /// 若有,判断是否运行中,
        /// 运行中则准备搜索补全的控件
        /// 若不是运行中,则显示登录界面
        /// </summary>
        private void InitClass()
        {
            if (AStatic.DbPath != null)
            {

                if (AStatic.IsRunning == false)
                {

                    MainWindow m = Application.Current.Properties["mainwindow"] as MainWindow;
                    Frame main_frame = m.FindName("main_frame") as Frame;
                    main_frame.Navigate(new ASignin());
                }

            }
            else
            {
                add_button.IsEnabled = false;
            }

            PrepareCompleteBox();

            lib = new ALib();
            lib_frame.Navigate(lib);

            hitList = new List<ALibModel>();

            comList = new List<ALibModel>();
            searchStrLen = 0;
        }
Exemplo n.º 2
0
        private void search_textBox_TextChanged(object sender, TextChangedEventArgs e)
        {
            List<ALibModel> searchList;
            isHit = search_textBox.Text.Length < searchStrLen ?
                false : isHit;

            if (!isHit)
            {
                hitList.Clear();
            }

            searchStrLen = search_textBox.Text.Length;

            comList.Clear();

            if (AStatic.Catalog != null && search_textBox.Text != "")
            {

                AUtils t = new AUtils();
                searchList = isHit ? hitList : AStatic.Catalog;

                foreach (ALibModel item in searchList)
                {
                    if (PyIndex(search_textBox.Text, item) == item.Tag)
                    {
                        comList.Add(item);

                        if (!isHit)
                        {
                            hitList.Add(item);
                        }

                    }

                }

                if (comList.Count > 0)
                {
                    isHit = true;
                    //complete_grid.Height = 100;
                    // complete_grid.MaxHeight = 300;
                    //complete_grid.Height = completeListBox.Items.Count * 40; //completeListBox.Height;
                    //complete_grid.Children.Add(completeBorder);

                    //ac.Focus();
                    AComplete com = new AComplete();
                    lib_frame.Navigate(com);

                    ListBox comlb = com.FindName("listBox") as ListBox;

                    comViewModel = comlb.DataContext as ACompleteViewModel;
                    foreach (ALibModel item in comList)
                    {
                        comViewModel.Accountlist.Add(item);
                    }
                    comViewModel.Selectedindex = 0;

                }
                else
                {
                    isHit = false;

                    // if no result in search, show a tip.
                    ALib a = new ALib();
                    lib_frame.Navigate(a);

                    TextBox b = new TextBox() { FontSize = 16 };
                    b.Text = FindResource("StrUid_noresult") as string;
                    b.Text += " \"" + search_textBox.Text + "\"";
                    Grid c = a.FindName("grid") as Grid;
                    c.Children.Add(b);

                }

            }
            else
            {
                isHit = false;

                lib_frame.Navigate(new Uri("ALib.xaml", UriKind.Relative));

            }
        }