/* * 初始化文件文件夹树 */ private void StorageVideo_InitFolder() { //1.初始化页面树 StorageVideoFolder storageVideoFolder = storageVideoFolderBll.get(1); if (storageVideoFolder == null) { return; } TreeViewItem firstItem = new TreeViewItem(); firstItem.IsExpanded = true; firstItem.Header = storageVideoFolder.name; firstItem.Tag = storageVideoFolder.id; firstItem.Padding = new Thickness(5); StorageVideo_GetTreeViewItemChildren(firstItem); //添加单击、右键事件 folderTreeColumn.MouseLeftButtonUp += (object sender, MouseButtonEventArgs e) => StorageVideo_TreeView_MouseLeftButtonUp(sender, e); folderTreeColumn.Items.Clear(); folderTreeColumn.Items.Add(firstItem); }
/* * 获取要删除的页面信息 */ private void getPageNameForDelete() { StorageVideoFolder storageVideoFolder = storageVideoFolderBll.get(folderId); if (storageVideoFolder != null) { pageName.Content = storageVideoFolder.name; } }
//页面居中显示到最前面 public StorageVideoRenameFolderWindow(TreeView pageTreeColumn, Int32 folderId) { InitializeComponent(); WindowStartupLocation = WindowStartupLocation.CenterScreen; this.pageTreeColumn = pageTreeColumn; thatFolderId = folderId; StorageVideoFolder thatFolder = storageVideoFolderBll.get(thatFolderId); foldername.Text = thatFolder.name; }
/* * 获取最后一个文件夹 */ public StorageVideoFolder getLastFolder() { String sql = "select * from storageVideoFolder order by id desc limit 0,1"; SQLiteParameter[] parameters = { }; DataTable dt = Common.SQLiteHelper.ExecuteQuery(sql, parameters); StorageVideoFolder entity = DataToEntity <StorageVideoFolder> .FillModel(dt.Rows[0]); return(entity); }
public StorageVideoNewFolderWindow(TreeView folderTreeColumn, Int32 parentId) { InitializeComponent(); //this.folderTreeColumn = folderTreeColumn; this.folderTreeColumn = folderTreeColumn; this.parentId = parentId; StorageVideoFolder lastFolder = storageVideoFolderBll.getLastFolder(); Int32 maxFolderId = lastFolder.id + 1; pagename.Text = "新文件夹" + maxFolderId; WindowStartupLocation = WindowStartupLocation.CenterScreen; }
/* * 插入子文件夹 */ public StorageVideoFolder insertChild(StorageVideoFolder tmp) { //补充idx,createTime两个参数 StorageVideoFolder maxFolder = getMaxIdxByParentId(tmp.parentId); if (maxFolder == null) { tmp.idx = 1; } else { tmp.idx = maxFolder.idx + 1; } return(storageVideoFolderDal.insert(tmp)); }
/* * 获取父栏目中最大的排序号 */ public StorageVideoFolder getMaxIdxByParentId(int parentId) { String sql = "select max(idx) as idx from storageVideoFolder where parentId=@parentId"; SQLiteParameter[] parameters = { new SQLiteParameter("@parentId", DbType.Int32, 4) }; parameters[0].Value = parentId; DataTable dt = Common.SQLiteHelper.ExecuteQuery(sql, parameters); StorageVideoFolder entity = DataToEntity <StorageVideoFolder> .FillModel(dt.Rows[0]); return(entity); }
/* * 将新添加的页面加入到页面树中 */ private void updateToTree(ItemsControl tree, StorageVideoFolder storageVideoFolder) { foreach (TreeViewItem item in tree.Items) { Int32 pageId = (Int32)item.Tag; if (thatFolderId == pageId) { item.Header = storageVideoFolder.name; break; } else { updateToTree(item, storageVideoFolder); } } }
/* * 是否存在同名文件夹 */ public int hasSameName(StorageVideoFolder entity) { string sql = "select count(*) from storageVideoFolder where name=@name and id!=@id"; SQLiteParameter[] parameters = { new SQLiteParameter("@name", DbType.String, 30), new SQLiteParameter("@id", DbType.Int32, 4) }; parameters[0].Value = entity.name; parameters[1].Value = entity.id; object obj = Common.SQLiteHelper.ExecuteScalar(sql, parameters); int result = int.Parse(obj.ToString()); return(result); }
/* * 初始化页面列表 */ private void initCombox() { StorageVideoFolder firstFolder = storageVideoFolderBll.get(1); if (firstFolder == null) return; ComboBoxItem defaultItem = new ComboBoxItem(); defaultItem.Content = "-- 请选择 --"; defaultItem.Tag = 0; defaultItem.IsSelected = true; moveToFolderId.Items.Add(defaultItem); ComboBoxItem firstItem = new ComboBoxItem(); firstItem.Content = firstFolder.name; firstItem.Tag = firstFolder.id; moveToFolderId.Items.Add(firstItem); int level = 0; getTreeViewItemChildren(firstItem, level, 0); }
/* * 插入一个文件夹 */ public StorageVideoFolder insert(StorageVideoFolder entity) { String sql = "insert into storageVideoFolder(name,parentId,idx) values(@name,@parentId,@idx);select last_insert_rowid();"; SQLiteParameter[] parameters = { new SQLiteParameter("@name", DbType.String, 100), new SQLiteParameter("@parentId", DbType.Int32, 4), new SQLiteParameter("@idx", DbType.Int32, 4) }; parameters[0].Value = entity.name; parameters[1].Value = entity.parentId; parameters[2].Value = entity.idx; DataTable dt = Common.SQLiteHelper.ExecuteQuery(sql, parameters); int id = DataType.ToInt32(dt.Rows[0]["last_insert_rowid()"].ToString()); entity.id = id; return(entity); }
/* * 更新 */ public int update(StorageVideoFolder entity) { string sql = "update storageVideoFolder set name=@name,parentId=@parentId,idx=@idx" + " where id=@id"; SQLiteParameter[] parameters = { new SQLiteParameter("@name", DbType.String, 100), new SQLiteParameter("@parentId", DbType.Int32, 4), new SQLiteParameter("@idx", DbType.Int32, 4), new SQLiteParameter("@id", DbType.Int32, 4) }; parameters[0].Value = entity.name; parameters[1].Value = entity.parentId; parameters[2].Value = entity.idx; parameters[3].Value = entity.id; int result = Common.SQLiteHelper.ExecuteNonQuery(sql, parameters); return(result); }
/* * 获取文件夹 */ public StorageVideoFolder get(int id) { String sql = "select * from storageVideoFolder where id=@id"; SQLiteParameter[] parameters = { new SQLiteParameter("@id", DbType.Int32, 4) }; parameters[0].Value = id; DataTable dt = Common.SQLiteHelper.ExecuteQuery(sql, parameters); if (dt == null || dt.Rows.Count == 0) { return(null); } StorageVideoFolder storageVideoFolder = DataToEntity <StorageVideoFolder> .FillModel(dt.Rows[0]); return(storageVideoFolder); }
/* * 将新添加的页面加入到页面树中 */ private void insertToTree(ItemsControl itemsControl, StorageVideoFolder folder) { foreach (TreeViewItem item in itemsControl.Items) { Int32 folderId = (Int32)item.Tag; if (parentId == folderId) { TreeViewItem newItem = new TreeViewItem(); newItem.Header = folder.name; newItem.Tag = folder.id; newItem.Padding = new Thickness(5); // newItem.Foreground = Brushes.White; item.Items.Add(newItem); newItem.BringIntoView(); break; } else { insertToTree(item, folder); } } }
private void Submit_Button_Click(object sender, RoutedEventArgs e) { StorageVideoFolder tmp = new StorageVideoFolder(); tmp.name = pagename.Text; tmp.parentId = parentId; if (string.IsNullOrWhiteSpace(tmp.name)) { MessageBox.Show("请填写页面名称"); return; } else if (tmp.parentId == 0) { MessageBox.Show("父页面不存在,请重试"); return; } tmp = storageVideoFolderBll.insertChild(tmp); insertToTree(folderTreeColumn, tmp); Close(); }
/* * 保存数据 */ private void Button_Click(object sender, RoutedEventArgs e) { StorageVideoFolder storageVideoFolder = storageVideoFolderBll.get(thatFolderId); storageVideoFolder.name = foldername.Text; if (string.IsNullOrWhiteSpace(storageVideoFolder.name)) { MessageBox.Show("请填写文件夹名称"); return; } //Boolean b = storageVideoFolderBll.hasSameName(storageVideoFolder); //if (b) //{ // MessageBox.Show("文件夹名称重复,请更换"); // return; //} storageVideoFolder = storageVideoFolderBll.update(storageVideoFolder); updateToTree(pageTreeColumn, storageVideoFolder); Close(); }
/* * 是否存在同名文件夹 */ public bool hasSameName(StorageVideoFolder storageVideoFolder) { int rows = storageVideoFolderDal.hasSameName(storageVideoFolder); return(rows > 0 ? true : false); }
/* * 更新 */ public StorageVideoFolder update(StorageVideoFolder storageVideoFolder) { int rows = storageVideoFolderDal.update(storageVideoFolder); return(storageVideoFolder); }