none
CREAR UN ELEMENTO EN UN MANEJADOR DE EVENTOS RRS feed

  • Pregunta

  • Hola,

    En un manejador de eventos, tengo que crear un elemento que abra dialogo y permita al  usuario seleccionar un
    archivo abrirlo y mostrar su contenido en el TextBox.

    En el cuadro de herramientas he visto el elemento OpenFileDialog, no puedo añadirlo xq en el cuadro de herramientas, m aparecen todos los elementos deshabilitados ¿PUEDE ESTAR RELACIONADO QUE ESTEN DESHABILITADOS CON FALLOS QUE HAY EN EL PROGRAMA? ¿Y HASTA QUE NO SE SOLUCIONEN LOS FALLOS NO SE HABILITAN? SI NO ESTAN RELACIONADOS ¿COMO LO HABILITO?

    He intentado escribir: 

    •  Command="OpenFileDialog" y d fallo La propiedad Command esta establecida mas de una vez
    • OpenFileDialog da fallo  No se encontro la propiedad OpenFileDialog en el tipo CommandBinding
    • <CommandBinding Command="OpenFileDialog"  m da fallo ValueSerializer CommandValueSerializer no puede convertir de System.String (Estos fallos dan al intentar crear el elrmento)

    Alguien puede decirme algun tutorial sobre manejadores de eventos

     

    Gracias

    lunes, 27 de septiembre de 2010 22:03

Respuestas

  • Hola Brujita tapita

    En WPF el OpenFileDialog hace un tiempo escribi un articulo sobre como usar el OpenFileDialog, SaveFileDialog y otros cuadros de dialogo estandard en WPF, puedes verlo aquí:

    http://jyeray.blogspot.com/2010/04/net-4-wpf-reutilizando-nuestro-trabajo.html

    EDIT: Me comenta David Gonzalez que puedes obtener el OpenFileDialog usando el namespace Win32, la verdad es que no lo sabía, muchas gracias David!!!

    Tienes una explicación de que hay que hacer y un proyecto de ejemplo en VB.NET y WPF para que veas como funciona.

    Un gran saludo, espero que sea lo que necesitas.


    MCTS .NET Framework 3.5 Windows Forms Application Development
    MCTS .NET Framework 3.5 Windows Presentation Foundation
    Visita mi Blog
    Sigueme en Twitter
    martes, 28 de septiembre de 2010 6:48
    Moderador

Todas las respuestas

  • Hola, intenté reproducir tu problema y lo único que consegui fue hacer que los controles aparecieran deshabilitados y eso se debió a que hizo falta establecer el canexecute de tu command, por ende lo interpreta como si no pudiera ejecutarlo y lo deshabilita.

    Sobre el ValueSerializer me parece que es porque estas enviando en comando a la caja de texto y no un texto.

    Saludos,


    Microsoft Certified Technology Specialist .NET 3.5 WPF Application Development
    Proyecto en Codeplex
    World Wide Finalist Imagine Cup 2007
    C#, WPF, WCF
    LinkedIn
    lunes, 27 de septiembre de 2010 23:25
  • Hola Brujita tapita

    En WPF el OpenFileDialog hace un tiempo escribi un articulo sobre como usar el OpenFileDialog, SaveFileDialog y otros cuadros de dialogo estandard en WPF, puedes verlo aquí:

    http://jyeray.blogspot.com/2010/04/net-4-wpf-reutilizando-nuestro-trabajo.html

    EDIT: Me comenta David Gonzalez que puedes obtener el OpenFileDialog usando el namespace Win32, la verdad es que no lo sabía, muchas gracias David!!!

    Tienes una explicación de que hay que hacer y un proyecto de ejemplo en VB.NET y WPF para que veas como funciona.

    Un gran saludo, espero que sea lo que necesitas.


    MCTS .NET Framework 3.5 Windows Forms Application Development
    MCTS .NET Framework 3.5 Windows Presentation Foundation
    Visita mi Blog
    Sigueme en Twitter
    martes, 28 de septiembre de 2010 6:48
    Moderador
  • ¡Hola!

    Disculparme la ignorancia. ¿Para trabajar con un OpenFileDialog para que necesitas un Command?

    Un saludo,

    martes, 28 de septiembre de 2010 9:15
  • Hola a todos,

    1º Gracias. Leyendo las respuestas se xq m dan los fallo

    David tenia razon con el namespace Win32 obtengo OpenFileDialog.

    ¿Como establezco el canexecute? el codigo q tengo con canexecute es este en la pagina Details

    <Page.CommandBindings>
            <CommandBinding Command="NextPage"
                            Executed="CommamdBinding_Executed"
                            CanExecute="CommamdBinding_CanExecuted"></CommandBinding>
        </Page.CommandBindings>

    Corsario, no puedo contestar tu pregunta, no lo se.

     

     

    viernes, 1 de octubre de 2010 20:35