DOWNLOAD NA LISTBOX

ACDONA 10/09/2009 18:07:18
#322537
Na hora que clico num botão, sempre faz download do primeiro arquivo da ListBox, onde errrei o codigo?
Depois de selecionar e cliclar no botão de comando, queria o download do arquivo selecionado na ListBox.

codigo no botao:

int idUsuario = 0;
idUsuario = (int)Session[[Ô]idUsuario[Ô]];
string nomeArquivo = [Ô][Ô];
nomeArquivo = Server.MapPath([Ô][Ô] + idUsuario + [Ô][Ô]) + [Ô]/[Ô] + lstArquivos.SelectedItem.Text;
Response.Clear();
Response.AddHeader ([Ô]Content-Disposition[Ô],[Ô]attachment; filename=[Ô] + lstArquivos .SelectedItem .Text );
Response.ContentType = [Ô]application/octet-stream[Ô];
Response.WriteFile(nomeArquivo );
Response.End();

Obrigado pela ajuda
JWCELYO 10/09/2009 18:18:36
#322540
Resposta escolhida
cade o erro o nome do erro
ACDONA 10/09/2009 18:32:57
#322542
Ola Jucelio
O erro esta, quando eu seleciono o arquivo para download da listbox.
Sempre faz o download do primeiro arquivo e não do arquido que selecionei.
Dei mais algumas mexidas, mas continua o problema de sempre biaxar o primeiro arquivo

protected void cmdBaixar_Click(object sender, EventArgs e)
{
int idUsuario = 0;
idUsuario = (int)Session[[Ô]idUsuario[Ô]];
FileInfo arquivo = new FileInfo(Server.MapPath([Ô][Ô] + idUsuario + [Ô][Ô]) + [Ô]/[Ô] + lstArquivos.SelectedItem.Text);
string nomeArquivo = [Ô][Ô];
nomeArquivo = Server.MapPath([Ô][Ô] + idUsuario + [Ô][Ô]) + [Ô]/[Ô] + lstArquivos.SelectedItem.Text;
arquivo = new FileInfo(nomeArquivo );
Response.Clear();
Response.AddHeader ([Ô]Content-Disposition[Ô],[Ô]attachment; filename=[Ô] + lstArquivos .SelectedItem .Text );
Response.AddHeader([Ô]Content-Length[Ô], arquivo.Length.ToString());
Response.ContentType = [Ô]application/octet-stream[Ô];
Response.WriteFile(nomeArquivo );
Response.End();
}
ACDONA 10/09/2009 18:58:10
#322544
e para preencher o listbox estou fazendo esse codigo no load da pagina

idUsuario = (int)Session[[Ô]idUsuario[Ô]];
DirectoryInfo diretorio = new DirectoryInfo(Server.MapPath([Ô][Ô]+idUsuario+[Ô][Ô]));
//Executa função GetFile(Lista os arquivos desejados de acordo com o parametro)
FileInfo[] Arquivos = diretorio.GetFiles([Ô]*.*[Ô]);
//Começamos a listar os arquivos
foreach (FileInfo fileinfo in Arquivos)
{
lstArquivos.DataSource = Arquivos;
lstArquivos.DataBind();
lstArquivos.SelectedIndex = 0;
}
JWCELYO 10/09/2009 19:00:08
#322545
ACDONA eu fis teste aqui e não deu erro não
JWCELYO 10/09/2009 19:04:19
#322546
acho que o erro esta no [txt-color=#df0101]lstArquivos.SelectedIndex = 0;[/txt-color] quando clikamos no button para baixar o navegado fais um novo load da pagina e manda para o index de novo tira esse lstArquivos.SelectedIndex = 0;
ACDONA 11/09/2009 10:17:23
#322596
Citação:

JWCELYO escreveu:
acho que o erro esta no [txt-color=#df0101]lstArquivos.SelectedIndex = 0;[/txt-color] quando clikamos no button para baixar o navegado fais um novo load da pagina e manda para o index de novo tira esse lstArquivos.SelectedIndex = 0;



Estava no load da página mesmo, foi só colocar tudo dentro do laço
if (!IsPostBack)
{...}

Valeu pela ajuda
Tópico encerrado , respostas não são mais permitidas