2016-08-04 7 views
0

私はfileuploadのコントロールを持っていて、filenamecodebehindに入れたいと思っています。私はファイルを選択してeditindexボタンを押すとeditindexイベントを使用しています。nullの値はfileuploadです。ここ は私aspxコードです:FileUploadコントロールはコードの背後にあるnull値を取得しますか?

<asp:GridView ID="comp_gr" runat="server" AutoGenerateColumns="false" OnRowEditing="comp_gr_RowEditing"> 
<Columns> 
<asp:CommandField ShowEditButton="true" ButtonType="Button" EditText="Complete Task" ControlStyle-BorderColor="White" ControlStyle-BorderStyle="Double" ControlStyle-BackColor="#990000" /> 
</Columns 
<Columns> 
<asp:TemplateField HeaderText="Attach Document"> 
<ItemTemplate> 
<asp:FileUpload ForeColor="Black" ID="FileUpload1" runat="server" /> 
    </ItemTemplate> 
    </asp:TemplateField> 
</Columns> 
</asp:GridView> 

そして、ここでは私のcodebehind

protected void comp_gr_RowEditing(object sender, GridViewEditEventArgs e) 
{ 
FileUpload file = (FileUpload)comp_gr.Rows[e.NewEditIndex].Cells[1].FindControl("FileUpload1"); 
string f = file.FileName.ToString(); 
} 

あるしかし、私はfに常にnull値を取得しています。

答えて

0

<ItemTemplate>ではなく、<EditItemTemplate>フィールドにFileUploadコントロールを配置する必要があります。

あなたがそれについて親切にGoogleについてそれについて知らない場合。

+0

どういう意味ですか?私は理解できません –

+0

このリンクをチェックしてください http://www.asp.net/web-forms/overview/data-access/custom-formatting/using-templatefields-in-the- gridview-control-cs –

+0

この 'fileupload'コントロールを' 'の中に置くと' gridview'の表示時に 'fileupload'コントロールが消えてしまいました。これをした後に' fileupload'が表示されないのは –

0

グリッドビューのOnRowEditイベントでファイルアップロードコントロールを管理する必要があります。

0

UpdatePanelのグリッド(およびFileUploadコントロール)はありますか?もしそうなら、それはあなたの問題がある場所です。更新パネルを削除するか、保存ボタンを設定するか、ポストバックを非同期ポストバックコントロールではなくポストバックコントロールにするかどうかを設定します。

関連する問題