Example #1
0
 protected override ListViewItem CreateItem(ListViewItemType itemType)
 {
     if (itemType != ListViewItemType.InsertItem)
     {
         return(base.CreateItem(itemType));
     }
     return(new ListViewInsertItem());
 }
Example #2
0
		public ListViewItem DoCreateItem (ListViewItemType type)
		{
			return CreateItem (type);
		}
Example #3
0
		public ListViewItem (ListViewItemType itemType)
		{
			ItemType = itemType;
		}
Example #4
0
 public ListViewItem DoCreateItem(ListViewItemType type)
 {
     return(CreateItem(type));
 }
Example #5
0
 public virtual void ResetItemType(ListViewItemType newItemType)
 {
     _itemType = newItemType;
 }
Example #6
0
 protected virtual ListViewItem CreateItem(ListViewItemType itemType) {
     ListViewItem item = new ListViewItem(itemType);
     if (itemType == ListViewItemType.InsertItem) {
         _insertItem = item;
     }
     return item;
 }
Example #7
0
        private ListViewItem CreateListViewItem(TableRow rowContainer, int itemIndex, ListViewItemType itemType, object dataItem, bool dataBind)
        {
            ListViewItem item = CreateListViewItem(itemIndex, itemType);
            ListViewItemEventArgs e = new ListViewItemEventArgs(item);

            ITemplate template = GetTemplateForItem(item);
            if (template != null) {
                template.InstantiateIn(item);
            }

            OnItemCreated(e);
            rowContainer.Cells.Add(item);

            if (dataBind) {
                item.DataItem = dataItem;
                item.DataBind();

                OnItemDataBound(e);
            }

            return item;
        }
Example #8
0
 public ListViewItem(int itemIndex, ListViewItemType itemType)
 {
     _itemIndex = itemIndex;
     _itemType  = itemType;
 }
Example #9
0
        private ListViewItem CreateListViewItem(TableRow rowContainer, int itemIndex, ListViewItemType itemType, object dataItem, bool dataBind)
        {
            ListViewItem          item = CreateListViewItem(itemIndex, itemType);
            ListViewItemEventArgs e    = new ListViewItemEventArgs(item);

            ITemplate template = GetTemplateForItem(item);

            if (template != null)
            {
                template.InstantiateIn(item);
            }

            OnItemCreated(e);
            rowContainer.Cells.Add(item);

            if (dataBind)
            {
                item.DataItem = dataItem;
                item.DataBind();

                OnItemDataBound(e);
            }

            return(item);
        }
Example #10
0
 public static bool IsListItemDataRow(ListViewItemType itemType)
 {
     return(
         (itemType == ListViewItemType.DataItem)
         );
 }
Example #11
0
 protected virtual ListViewItem CreateListViewItem(int itemIndex, ListViewItemType itemType)
 {
     return(new ListViewItem(itemIndex, itemType));
 }
Example #12
0
        protected virtual void CreateControlHierarchy(bool useDataSource)
        {
            IEnumerable dataSource = null;
            int         itemCount  = 0;

            _items = null;

            ArrayList dataKeysArray = DataKeysArray;
            string    dataKeyField  = null;

            if (useDataSource)
            {
                dataSource = GetDataSource();

                dataKeysArray.Clear();
                dataKeyField = DataKeyField;
            }
            else
            {
                dataSource = new object[(int)ViewState["Items"]];
            }

            if (dataSource != null)
            {
                Table outerTable = new Table();
                Controls.Add(outerTable);

                ListViewItem headerItem = null;
                ListViewItem footerItem = null;

                if (_headerTemplate != null)
                {
                    TableRow headerRow = new TableRow();
                    outerTable.Rows.Add(headerRow);
                    headerItem = CreateListViewItem(headerRow, -1, ListViewItemType.Header, null, useDataSource);
                }

                TableRow bodyRow = new TableRow();
                outerTable.Rows.Add(bodyRow);

                TableCell bodyCell = new TableCell();
                bodyRow.Cells.Add(bodyCell);

                ListViewPanel viewPanel = new ListViewPanel();
                bodyCell.Controls.Add(viewPanel);

                ListViewTable innerTable = CreateListViewTable();
                viewPanel.Controls.Add(innerTable);

                TableRow itemsRow = new TableRow();
                innerTable.Rows.Add(itemsRow);

                int editIndex     = EditIndex;
                int selectedIndex = SelectedIndex;

                int itemIndex = 0;
                foreach (object dataItem in dataSource)
                {
                    ListViewItemType itemType = ListViewItemType.Item;

                    if (itemIndex == editIndex)
                    {
                        itemType |= ListViewItemType.EditItem;
                    }
                    if (itemIndex == selectedIndex)
                    {
                        itemType |= ListViewItemType.SelectedItem;
                    }

                    CreateListViewItem(itemsRow, itemIndex, itemType, dataItem, useDataSource);
                    itemIndex++;
                    itemCount++;

                    if (useDataSource && (dataKeyField.Length != 0))
                    {
                        dataKeysArray.Add(DataBinder.GetPropertyValue(dataItem, dataKeyField));
                    }
                }

                if (_footerTemplate != null)
                {
                    TableRow footerRow = new TableRow();
                    outerTable.Rows.Add(footerRow);
                    CreateListViewItem(footerRow, -1, ListViewItemType.Footer, null, useDataSource);
                }

                _items = CreateListViewItemCollection(itemsRow.Cells, headerItem, footerItem);
            }

            if (useDataSource)
            {
                ViewState["Items"] = itemCount;
            }
        }
Example #13
0
        protected virtual void PrepareControlHierarchyForRendering()
        {
            ControlCollection controls = Controls;

            if (controls.Count != 1)
            {
                return;
            }

            Table outerTable = (Table)controls[0];

            outerTable.CopyBaseAttributes(this);
            if (ControlStyleCreated)
            {
                outerTable.ApplyStyle(ControlStyle);
            }
            else
            {
                // Because we didn't create a ControlStyle yet, the settings
                // for the default style of the control need to be applied
                // to the child table control directly.
                outerTable.CellSpacing = 0;
            }

            TableRowCollection rows     = outerTable.Rows;
            TableCell          bodyCell = null;

            if (_headerTemplate != null)
            {
                TableRow headerRow = rows[0];
                if (ShowHeader)
                {
                    if (_headerStyle != null)
                    {
                        headerRow.Cells[0].MergeStyle(_headerStyle);
                    }
                }
                else
                {
                    headerRow.Visible = false;
                }

                bodyCell = rows[1].Cells[0];
            }
            if (_footerTemplate != null)
            {
                TableRow footerRow = rows[rows.Count - 1];
                if (ShowFooter)
                {
                    if (_footerStyle != null)
                    {
                        footerRow.Cells[0].MergeStyle(_footerStyle);
                    }
                }
                else
                {
                    footerRow.Visible = false;
                }
            }

            if (bodyCell == null)
            {
                bodyCell = rows[0].Cells[0];
            }

            ListViewPanel viewPanel = (ListViewPanel)bodyCell.Controls[0];

            if (_viewStyle != null)
            {
                viewPanel.ApplyStyle(_viewStyle);

                if (ShowScrollBars)
                {
                    viewPanel.Style["overflow"]   = "scroll";
                    viewPanel.Style["overflow-x"] = "auto";
                    viewPanel.Style["overflow-y"] = "auto";
                }
            }

            ListViewTable bodyTable = (ListViewTable)viewPanel.Controls[0];

            bodyTable.Columns = Columns;

            foreach (ListViewItem item in _items)
            {
                TableItemStyle   style          = _itemStyle;
                TableItemStyle   compositeStyle = null;
                ListViewItemType itemType       = item.ItemType;

                if (((itemType & ListViewItemType.EditItem) != 0) && (_editItemStyle != null))
                {
                    if (style != null)
                    {
                        compositeStyle = new TableItemStyle();
                        compositeStyle.CopyFrom(style);
                        compositeStyle.CopyFrom(_editItemStyle);
                    }
                    else
                    {
                        style = _editItemStyle;
                    }
                }
                if (((itemType & ListViewItemType.SelectedItem) != 0) && (_selectedItemStyle != null))
                {
                    if (compositeStyle != null)
                    {
                        compositeStyle.CopyFrom(_selectedItemStyle);
                    }
                    else if (style != null)
                    {
                        compositeStyle = new TableItemStyle();
                        compositeStyle.CopyFrom(style);
                        compositeStyle.CopyFrom(_selectedItemStyle);
                    }
                    else
                    {
                        style = _selectedItemStyle;
                    }
                }

                if (compositeStyle != null)
                {
                    item.MergeStyle(compositeStyle);
                }
                else if (style != null)
                {
                    item.MergeStyle(style);
                }

                if (_renderClickSelectScript)
                {
                    if ((itemType & ListViewItemType.SelectedItem) == 0)
                    {
                        item.Attributes["onclick"] = Page.GetPostBackEventReference(this, "S" + item.ItemIndex);
                        item.Style["cursor"]       = "hand";
                    }
                }
            }
        }
        // =============================================================================================
        //              СОХРАНЕНИЕ В XML И ЗАГРУЗКА ИЗ XML СПИСКА FB2 КНИГ
        // =============================================================================================
        #region Сохранение в xml и Загрузка из xml списка fb2 книг

        #region Сохранение в xml списка fb2 книг
        // сохранение списка книг в xml-файл
        private void saveListToXml(ref BackgroundWorker bw, ref DoWorkEventArgs e, string ToFileName)
        {
            XElement  xeBooks = null;
            XDocument doc     = new XDocument(
                new XDeclaration("1.0", "utf-8", "yes"),
                new XComment("Файл обрабатывакмых fb2 книг, сохраненный после полного окончания работы Редактора Метаданных (режим Проводник)"),
                new XElement("Files", new XAttribute("type", "metaeditor_explorer"),
                             new XComment("Папка для обработки fb2 книг"),
                             new XElement("SourceDir", m_textBoxAddress.Text.Trim()),
                             new XComment("Список обрабатываемых книг"),
                             xeBooks = new XElement("Books", new XAttribute("count", "0")),
                             new XComment("Выделенный элемент списка, на котором завершили обработку книг"),
                             new XElement("SelectedItem", m_LastSelectedItem.ToString())
                             )
                );

            if (m_listViewFB2Files.Items.Count > 0)
            {
                ProgressBar.Maximum = m_listViewFB2Files.Items.Count;
                int BookCount  = 0;
                int FileNumber = 0;
                int i          = 0;
                foreach (ListViewItem lvi in m_listViewFB2Files.Items)
                {
                    ListViewItemType it = (ListViewItemType)lvi.Tag;
                    // в список - только существующие на диске книги и каталоги
                    bool IsExist = false;
                    if (it.Type == "f")
                    {
                        IsExist = File.Exists(it.Value) ? true : false;
                    }
                    else
                    {
                        IsExist = Directory.Exists(it.Value) ? true : false;
                    }
                    if (IsExist)
                    {
                        doc.Root.Element("Books").Add(
                            new XElement("Book",
                                         new XAttribute("number", ++FileNumber),
                                         new XAttribute("type", it.Type == "f" ? "file" : "dir"),
                                         new XAttribute("path", it.Value),
                                         new XElement("FileName", lvi.SubItems[(int)ResultViewCollumnEnum.Path].Text),
                                         new XElement("BookTitle", lvi.SubItems[(int)ResultViewCollumnEnum.BookTitle].Text),
                                         new XElement("Authors", lvi.SubItems[(int)ResultViewCollumnEnum.Authors].Text),
                                         new XElement("Genres", lvi.SubItems[(int)ResultViewCollumnEnum.Genres].Text),
                                         new XElement("Sequence", lvi.SubItems[(int)ResultViewCollumnEnum.Sequences].Text),
                                         new XElement("Lang", lvi.SubItems[(int)ResultViewCollumnEnum.Lang].Text),
                                         new XElement("BookID", lvi.SubItems[(int)ResultViewCollumnEnum.BookID].Text),
                                         new XElement("Version", lvi.SubItems[(int)ResultViewCollumnEnum.Version].Text),
                                         new XElement("Encoding", lvi.SubItems[(int)ResultViewCollumnEnum.Encoding].Text),
                                         new XElement("Validation", lvi.SubItems[(int)ResultViewCollumnEnum.Validate].Text),
                                         new XElement("Format", lvi.SubItems[(int)ResultViewCollumnEnum.Format].Text),
                                         new XElement("FileLength", lvi.SubItems[(int)ResultViewCollumnEnum.FileLength].Text),
                                         new XElement("FileCreationTime", lvi.SubItems[(int)ResultViewCollumnEnum.CreationTime].Text),
                                         new XElement("FileLastWriteTime", lvi.SubItems[(int)ResultViewCollumnEnum.LastWriteTime].Text),
                                         new XElement("ForeColor", lvi.ForeColor.Name),
                                         new XElement("BackColor", lvi.BackColor.Name),
                                         new XElement("IsChecked", lvi.Checked)
                                         )
                            );
                        xeBooks.SetAttributeValue("count", ++BookCount);
                    }
                    bw.ReportProgress(++i);
                }
            }
            doc.Save(ToFileName);
        }
Example #15
0
 protected virtual ListViewItem CreateListViewItem(int itemIndex, ListViewItemType itemType)
 {
     return new ListViewItem(itemIndex, itemType);
 }
Example #16
0
 public ListViewItem(ListViewItemType itemType)
 {
     _itemType = itemType;
 }
Example #17
0
 protected override ListViewItem CreateItem(ListViewItemType itemType)
 {
     if (itemType != ListViewItemType.InsertItem) {
         return base.CreateItem(itemType);
     }
     return new ListViewInsertItem();
 }
Example #18
0
 public virtual void ResetItemType(ListViewItemType newItemType)
 {
     _itemType = newItemType;
 }
Example #19
0
 public ListViewItem(int itemIndex, ListViewItemType itemType)
 {
     _itemIndex = itemIndex;
     _itemType = itemType;
 }