/// <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; }
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)); } }