// Обновляем поле после изменений пользователя
        public override void UpdateFieldValueInItem()
        {
            // Проверяем валидность страницы
            Page.Validate();
            if (Page.IsValid)
            {
                // Посмотрим, что пришло с клиента
                FileUpload  fuDocument = (FileUpload)TemplateContainer.FindControl("fuDocument");
                HiddenField hdFileName = (HiddenField)TemplateContainer.FindControl("hdFileName");

                // Если скрытое поле пусто и есть файл, значит, его нужно удалить
                if (hdFileName.Value == String.Empty && currentFile != null)
                {
                    // Удаляем файл
                    deleteFile();

                    // Обнуляем значение поля
                    currentFile = null;
                }

                // Загружаем файл и выставляем на него ссылки
                if (fuDocument.HasFile)
                {
                    SPWeb    web    = SPContext.Current.Site.RootWeb;
                    SPFolder folder = web.GetFolder(SPUrlUtility.CombineUrl(web.ServerRelativeUrl, libraryName));

                    // Если файл был, удалим его
                    if (currentFile != null)
                    {
                        deleteFile();
                    }

                    // Добавим новый файл и сохраним соответствующие значения
                    currentFile = addFile(folder, fuDocument);
                }

                base.UpdateFieldValueInItem();
            }
        }
 // Получаем значение текущего файла
 protected override void OnInit(EventArgs e)
 {
     currentFile = (FileValue)this.ItemFieldValue;
     base.OnInit(e);
 }
        // Обновляем поле после изменений пользователя
        public override void UpdateFieldValueInItem()
        {
            // Проверяем валидность страницы
            Page.Validate();
            if (Page.IsValid)
            {
                // Посмотрим, что пришло с клиента
                FileUpload fuDocument = (FileUpload)TemplateContainer.FindControl("fuDocument");
                HiddenField hdFileName = (HiddenField)TemplateContainer.FindControl("hdFileName");

                // Если скрытое поле пусто и есть файл, значит, его нужно удалить
                if (hdFileName.Value == String.Empty && currentFile != null)
                {
                    // Удаляем файл
                    deleteFile();

                    // Обнуляем значение поля
                    currentFile = null;
                }

                // Загружаем файл и выставляем на него ссылки
                if (fuDocument.HasFile)
                {
                    SPWeb web = SPContext.Current.Site.RootWeb;
                    SPFolder folder = web.GetFolder(SPUrlUtility.CombineUrl(web.ServerRelativeUrl, libraryName));

                    // Если файл был, удалим его
                    if (currentFile != null)
                    {
                        deleteFile();
                    }

                    // Добавим новый файл и сохраним соответствующие значения
                    currentFile = addFile(folder, fuDocument);
                }

                base.UpdateFieldValueInItem();
            }
        }
 // Получаем значение текущего файла
 protected override void OnInit(EventArgs e)
 {
     currentFile = (FileValue)this.ItemFieldValue;
     base.OnInit(e);
 }