Preguntas y Respuestas

Hola qué tal? Esta página está especialmente dedicada a preguntas y respuetas, tú pon tu pregunta acerca de tecnologías Microsoft, y yo trataré de responderla lo antes posible 🙂 También puedes poner sugerencias, comentarios u otra cosa que desees.

Salu2

46 comentarios sobre “Preguntas y Respuestas

  1. ¡Hola!, escribo porque quiero saber, cómo manipular un TextBox en ExpressionBlend2, de tal forma que se mueva como en 3D es decir, que pueda moverlos con MakeImage3D, gracias y mucho les agradeceré me puedan ayudar.

    Tere =D !!!

  2. beuno pues aki mi segundo comentario
    pues
    como no se mucho
    de esa onda pues mi pregunta
    es
    chan
    chan
    cuando
    es tu cumple?
    jajajajajjajajajajajajjaja
    jajajajjajaja
    sale bro
    Dtb

  3. Hola que tal!! Estoy trabajando con aplicaciones WPF para realizar un aplicativo que integre varios módulos de tal manera que la aplicación sea dinamica y me surgen varias preguntas ya que llevo poco tiempo manejando Blend 2.

    En primer lugar me gustaria desplegar las ventanas del aplicativo en pestañas y por otro lado me ha sido dificil manejar los datos de mi DataBase.

    Estoy trabajando con Visual Studio 2008 en lenguaje C#, agradezco de antemano tu ayuda…

  4. Hola que tal!! Esoty realizando una aplicacion WPF de tal manera que integre varios modulos de forma dinamica y me surgen varias pregunas, la primera: me gustaria desplegar las ventanas en pestañas.
    Utilizo Visual Studio 2008 con C#, de antemano mil gracias por tu ayuda.

  5. MMM.. te había escrito ya una respuesta pero por problemas del inter, no pude postearla, así que aquí está de nuevo:

    Te decía que tu pregunta acerca de cargar varios módulos es muy interesante, pero la trataremos un poco mas adelante.

    Sobre eso de las pestañas, no sé si habrás pensado en un TabControl, el cual te permite colocar pestañas a través de los TabItems, tal como lo hice en la entrada Introducción a WPF, y creación de una aplicación WPF 3-D, parte 3 de N en e llink:

    https://hectorperez.wordpress.com/2008/05/24/introduccin-a-wpf-y-creacin-de-una-aplicacin-wpf-3-d-parte-3-de-n/

    el código de ese ejemplo, y donde se usa el TabControl es:

    http://byqtya.blu.livefilestore.com/y1piwO0HoNnaadvmFjEH5cy0pIJrVQ6YWC6ctpFM9VcDtygrVrDrb2l3aYNarOWyjP0x8WCn-_04uJ-7CK7rzXU9Xa4K7RUlGMf/Contenedores.zip?download

    Ahora bien, no sé si sea eso lo que buscas exactamente, en el caso de que me dijeras no! jaja, me adelanto y te presento, por si no las conocías las Composite Applications (Aplicaciones Compuestas).

    Estas básicamente, como dice la documentación: «consta de módulos de acoplamiento flexible que se descubren y componen dinámicamente en tiempo de ejecución. Los módulos contienen componentes visuales y no visuales que representan los distintos sectores verticales del sistema».

    O sease que puedes cargar «dinámicamente» como lo has expresado, elementos visuales en tu aplicación, si quieres ver mas práctico esto, tienes a tu disposición un HOL(Hands on lab) de este concepto aquí:

    http://msdn.microsoft.com/en-us/library/cc707878.aspx

    Y si quiers adentrarte aún mas, tienes los Pattern & Practices de las Composite Applications, donde se muestran ejemplos y está la documentación completa, aquí:

    http://www.microsoft.com/downloads/details.aspx?FamilyId=6DD3D0C1-D5B4-453B-B827-98E162E1BD8D&displaylang=en

    Sobre lo de la Base de DAtos, escribí una entrada muy superficial sobre eso aquí:

    https://hectorperez.wordpress.com/2008/07/28/cmo-cargar-una-tabla-de-bd-hecha-en-sql-2005-en-wpf/

    Y aunque estoy pensando en el futuro escribir sobre la integración de LINQ con WPF, te recomiendo que lo investigues, ya que realmente facilita muchísimo el desarrollo, ya que permite manejar los elementos de una base de Datos nada mas y nada menos que como objetos!!!

    Espero que te hayan sido de utilidad estos recursos, hasta luego y éxito!! 🙂

  6. Hector, mil gracias por tu respuesta ha sido de mucha ayuda ya que me di cuenta que WPF no maneja Ventanas MDI, y por tal razon me surge una pregunta mas… Estoy tratando el tema del TabControl y me gustaria realizar algo como lo siguiente:
    En primer lugar, lo que sucede es que tengo una aplicacion separada en 3 capas y en un de ellas estan las ventanas de cada uno de los modulos que se pretenden construir, las cuales, son llamadas por una Ventana que hace de Contenedor donde colocaria el Tabcontrol, bueno, la pergunta es como llamo desde un tabcontrol a las ventanas de los contenedores? Espero que no te moleste tanta preguntadera…

    Una cosa mas los videos que has colgado en tu Blog soy muy buenos gracias por ese detalle espero que lo sigas haciendo, ademas, lo de las Aplicaciones Compuestas es un tema muy interesante voy a seguir investigando.

    Nuevamente mil gracias por tu colaboracion…

  7. ke ondas:

    pues mi pregunta es la siguiente, estoy haciendo una aplicacion en wpf, el problema es que necesito insertar una imagen, ojo, èsta es una imagen cualquiera, lo que necesito es insertar imagenes que originalmente no esten el el proyecto, es como cuando en word le pones insertar imagen y èste te muestra un cuadro de dialogo donde te pregunta la ubicaciòn de la imagen, por tanto no se si se pueda realizar esto, lo que yo okuparia sería insertar una imagen pero desde un cuadro de dialogo, preguntanto por la ubicacion de la imágen, y no que la tenga que insertar al proyecto e indicarle directamente la ruta de esta imagen, como normalmente se ace, espero tu respuesta y de ante mano muchas gracias

    atte:karlos

  8. Hola Hector

    Tengo una duda a ver si me puedes aportar un poquito de luz que la necesito.

    Tengo una combobox que la he binding a traves de una consulta LINQ a traves propiedad DATACONTEXT. LA combo ahora tiene los elementos correctamente. Ahora lo que querria seria enlazar el selectedIndex a otro campo de otra tabla de la base de datos para posteriormente ser guardado en una BDD.

    XAML:

    Esto no me funciona ya que el itemssource que lo enlazo és de la tabla paises .El combo tiene los paises correctamente entrados pero el binding del SelectedIndex es un campo de otra tabla i por tanto no se enlaza bien .Supongo que le tendria que indicar a que origen de datos lo quiero enlazar pero no se como

    muchas gracias. Espero no haver liado mas de la cuenta.

  9. Ok, después de leer muchas veces, siento que aún no entiendo bien, no tanto la duda, sino cómo estás enlazando los datos.

    Para trata de simular el problema, lo que hice fue crearme 2 combobox, y los cargué dinámicamente a través de una sentencia LINQ

    var contexto = new PaisesDataContext();
    var query = from p in contexto.tblPaises
    select p.NombrePais;
    comboBox1.ItemsSource = query;

    var contexto2 = new PaisesDataContext();
    var query2 = from p in contexto2.tblPaises2s
    select p.NombrePais;
    comboBox2.ItemsSource = query2;

    Posteriormente, lo único que hice, de igual forma desde código, fue usar el vento selectionchanged

    private void comboBox2_SelectionChanged(object sender, SelectionChangedEventArgs e)
    {
    comboBox1.SelectedItem = comboBox2.SelectedItem;
    }

    Con esto, el item seleccionado del combo 1 cambia a partir de lo que tengo seleccionado en el 2.

    Sería cuestión de ver, hacia donde estás haciendo el binding del selecteditem, si estás usando LINQ to SQL, o cómo lo estás haciendo.

  10. Hola pues no nos hemos entendido me lo temia. Partiendo del codigo que has puesto

    var contexto = new PaisesDataContext();
    var query = from p in contexto.tblPaises
    select p.NombrePais;
    comboBox1.ItemsSource = query;

    con esto ya tenemos el combobox lleno correctamente.Ahora quiero enlazar el valor Selectedindex del combobox con otro campo de una consulta LINQ que he utilizado para cargar datos de otra tabla.Aqui el codigo que tengo i no me va.

    TABLA PAIS
    CodigoPAis
    NombrePAis

    TABLA VIAJE
    CodigoViaje
    CodigoPais2

    Resumiendo: una vez populado el combobox con la tabla pais i como has mostrado en el ejemplo,posteriormente hacer un binding hacia el campo codigopais de la tabla viaje para cuando recupero los datos se posicione en el pais que he guardado i cuando guarde los datos se guarde en la tabla viaje (TwoWay)

    Espero haver mejorarado mi explicacion

  11. Hola Hector, muchas gracias por tu sitio,
    ahora paso a mi consulta,
    me gustaria tener un textbox en c# que haga autocompletar por ejemplo a las direcciones de email a partir de la @,
    por ejemplo, que al escribir «usuariox@» el autocompletar muestre las opciones disponibles p.e. «@yahoo.com, @yahoo.es, @hotmail.com, @gmail.com, etc», y que valla autocompletando segun se valla escribiendo la direccion p.e. «usuariox@ya» entonces muestre el autocompletar como «hoo.com, hoo.es, etc»
    ya que he intentado con las propiedades del textbox agregando los items en autocomplete source custom como «@yahoo.com, @hotmail.com, @gmail.com, etc»
    y el autocompletar solo se activa cuando comienzo a escribir con una «@» mostrando entonces las opciones o items;
    he buscado por la red y no he encontrado nada parecido a lo que me interesa, espero no pedir mucho y haberme explicado bien,
    en todo caso con que se activara el autocompletar a partir de la @ eso seria genial.

    De antemano muchas gracias por tu ayuda. 😀

  12. Hola,
    Estoy realizando una aplicación en WPF y no consigue cambiar la visibilidad de todo un panel grid mediante un botón que esté en otro panel grid.
    Es eso posible?
    Saludos y gracias

  13. Hola Judith, sí es posible, si estoy entendiendo bien. Todo es cuestión de ponerle nombre a cada uno de los paneles, e indicar en el procedimiento del evento del botón. Mira por ejemplo, me he creado esta pequeña aplicación muy sencilla, dividida en 2 paneles grid, uno a la izquierda y otro a la derecha:

    Ok, en el evento click del botón, he puesto algo así:

    private void btn1_Click(object sender, System.Windows.RoutedEventArgs e)
    {
    Contenedor_izquierdo.Visibility = Visibility.Collapsed;
    }

    donde cambio la visibilidad del contenedor izquierdo, a collapsed, lo cual colapsara todo lo que haya en el panel, dejando algo así:

    Espero que te sirva jeje, salu2

  14. Hola de nuevo,
    He estado probando pero me he dado cuenta que lo que en realidad necesitaría es poder hacer todas las operaciones relativas a la interfaz grafica desde WPF sin tocar código C#.

    Es posible cambiar la visibilidad de un control desde un eventtrigger que contenga un setter, o algo así? Es decir desde código xaml

    Lo he intento también hacer con un storyboard desde el Blend2, pero tiene un comportamiento extraño y no creo que sea la mejor manera para mostrar/ocultar controles.

    Saludos y gracias 🙂

  15. Hola Judit, jeje, mira, sobre la pregunta que me haces, sí se puede hacer. Todo loq ue tienes que hacer, es definir un trigger, asociando el evento, con lo que quieres que se haga. Esto se tiene que poner en la parte de los recursos de Window, por ejemplo:

    Código

    En primer lugar, he definido un storyboard sencillo, el cual ocultará al panel grid izquierdo al momento de ser presionado el botón de click, esto se define en la segunda parte, en la parte de <Window.Triggers…, donde se especifica que se hará referencia al evento click de btn1, y qu eposteriormente empezará la animación que oculta al panel.

    Con Blend es mucho más fácil hacer todo esto, no sé qué comportamiento raro te haya causado, pero vuelve a tratar de hacerlo, que seguro te facilita la vida 🙂

    Salu2

  16. Hola y saludos para todos.
    Fíjate que apenas dí con tu blog y que bueno..jeje

    Bueno….tengo un problema, resulta que estoy desarrollando un aplicación en C# y bueno pues ya esta casi terminada solo que cuando la pruebo en mi pc donde la estoy desarrollando me funciona de maravilla pero, cuando la pruebo en otra pc para ver su funcionamiento pues me da un error de conexión 40. Que no se pudo establecer la conexión con sql server. Un maestro me dijo que tenía que hacer un archivo de configuración y modificarlo de acuerdo a las propiedades del nuevo server y me pasó unos links de la web de microsoft. Ya los leí y puse en práctica lo que allí dice pero no me resulta, creo que me faltan pasos o tal vez no es lo que yo busco. Lo que quiero es que mi aplicación corra en otra pc con sql server o en cualquier otra pc que tenga dicha instancia. Con Delphi solo copiaba mi bdd a la ruta en la que la desarrollé dicha aplicación, echaba a andar firebird y corria como si nada. Aquí (ando empezando con .NET) no es así, me faltan pasos para eso. Entonces mi duda es como puedo hacer para que mi aplicación corra en esa otra pc o en cualquier otra que la instale ? No sé si es mucho lo que pido y disculpas si es así.
    Utilizo:
    Visual Studio 2008 Pro
    SQL Server 2008 Developer edition
    Y mi aplicación esta hecha con C#.
    En la otra pc también instalo sql server 2008 pero el express que es el que puedo instalar sin problemas de licencias.

  17. Hola Renato:

    Bueno, seguramente el problema lo tienes en tu cadena de conexión. Si has desarrollado la aplicación con SQL Server 2008 Developer edition, seguramente habrás nombrado tu instancia de SQL server de alguna manera, la has nombrado así también en la versión de Sql Express? Checa la serie de conexión a bases de datos que he escrito previamente:

    https://hectorperez.wordpress.com/2009/06/08/manejando-cadenas-de-conexin-en-net-con-csharp/

    https://hectorperez.wordpress.com/2009/06/08/manejando-cadenas-de-conexin-en-net-con-c23/

    https://hectorperez.wordpress.com/2009/06/09/manejando-cadenas-de-conexin-en-net-con-c33/

    Salu2 y espero que te sirva 😉

  18. Hola Gracias por la respuesta…!
    Fíjate que soy yo de nuevo y pues ví tus ejemplos, pero en realidad no son lo que yo busco. Lo que quiero es que la aplicación que desarrollé poder instalarla en otra pc o en cualquier pc que pudiera necesitarla. Es decir hice alguna aplicaciones y en la pc donde las hice corren muy bien, pero al generarlas y llevarlas a otra pc y aunque en esa pc instale sql server developer edition y lleve mi bdd a la misma ubicación p.e: «C:\bdd\controlCursos.mdf» al ejecutar mi aplicación me da el mismo error de conexión con la base de datos y si comprendo pues es otro equipo y requiere una cadena de conexión distinta. Pero lo que quiero es crear un archivo externo a mi aplicación y poder configurar allí la cadena que ahora ocupa porque de otra manera tendría que instalar visual studio, modificar mi dataset, volver a compilar y si no hay errores generar la aplicación y ya despues instalarla. No sé como haces tu si por ejemplo creas alguna aplicación como la ejecutas en otra pc que se conecte con sql server. Con Delphi solo me llevaba mi aplicación pegaba la carpeta en la ruta en la que lo compilé y vamonos !! listo !. Pero aquí no sé como hacerlo. Me podrías ayudar con eso ?
    Gracias !!

  19. Vale, primero que nada, 2 preguntas a ti,

    ¿Cómo estás generando el instalador de tu aplicación? Creas un proyecto de instalación? o estás creandolo desde la opción Publish?

    La segunda es: Adjuntas (Attach) tu base de datos en el servidor donde quieres ejecutar la aplicación?

    Responde eso, y ya veremos, jeje

    Salu2

  20. leyendo tu ultima respuesta Héctor
    no podrias poner una entrada en tu blog acerca de como generas instalador de alguana aplicacion?
    Estaria genial!.
    Por cierto soy nuevo en tu blog y estan muy agradables y geniales tus entradas son de mucha ayuda
    e eestado leyendo una por una, vale la pena (Y)
    gracias
    saludos

  21. Jeje, hola Jorge, gracias por el comentario, es en verdad gratificante el saber que le sirve de ayuda a otras personas lo que escribes, 🙂

    Vale, escribiré acerca de eso, creo que me saldrán 2 o 3 partes, hoy mismo quiero publicar la primer parte, Salu2 y éxito jeje

  22. Hola Hector, gracias por contestar. Te comento:
    Lo que hago es generar aplicación y eso me genera un archivo setup.exe con una carpeta. Y mi proyecto que en este momento intento instalar sí esta adjuntada la base de datos (creo), digo creo porque creo recordar que cuando me dió esa opción dí en aceptar. Pero me gustaría saber como lo hago con o sin adjuntar.
    Bueno…si es que es posible.
    Gracias !!

  23. Hola fíjate que así esta la configuración de mi proyecto (al menos en parte de la base de datos):
    Y es tipo: cadena de conexión, ambito: aplicación, valor:
    Data Source=SICKPSIQUESAURU;Initial Catalog=RegCursosbdd;Integrated Security=True

    Esto lo saqué de las propiedades de mi proyecto en la ficha «Configuración». sé que allí esta el problema o al menos parte de este.

    Y bueno pues mi server se llama sickpsiquesauru, pero el de otros puede ser x valor y creo que ese es el problema pero tendría que estar instalando visual studio en todos los lugares donde quisiera instalar la aplicación y creo que no es práctico.
    Bueno eso es algo más de info que se me ocurrió pasarte.
    Gracias !

  24. Hola?, estaba siguiendo tu cursito de WPF, el del plano de la casa. es realmente bueno, he aprendido mucho, pero no lo has continuado desde hace mucho tiempo, vas a continuar? o me busco la vida por ahi?, aun no se meter codigo en lo que acabo de hacer en este paso, muchas gracias, un excelente trabajo

  25. Hola Hector!!!
    Estoy desarrollando una aplicación de escritorio con c# y interfaz wpf. Paso a explicarte cual es el problema, yo tengo un window, que vendria a ser mi pantalla principal, en la cual tengo un boton desde el que tengo que invocar a otro a un page.
    El problema es que no se como hacer para que se muestre el page, cuando hago click en el boton.
    Me podrias ayudar????

    1. Bueno, primero tendría que preguntar, ¿es una WPF Application, o una WPF «Browser» Application? Supongo que es la primera opción, de ser así, ¿porqué usas un Page en vez de un Window? Responde eso y con gusto q te ayudo 😉
      Salu2

  26. Si es una WPF application, y quiero usar una page porque necesito las funciones de navegacion que proporciona, es que estoy haciendo un sistema informatico que maneja registraciones y las cualidades del page me permiten verificar y validar los datos ingresados de una manera mas simple, ademas que ya la tengo hecha como WPF Browser App.. y me gustaria poder reutilizarla

  27. WoOla coMpa…
    BueNo TnGo uNa DuDa QuiSieRa SaBeR CoMo PueDo Ocultar Las FicHaS dE uN TaBcoNtRol ???
    BuEno EsPeRo Thu ReSpuEsTa…

    Q EsTeS Bn…

    aTt: El CaPiTaN

  28. Hola Hector, Necesito un poco de ayuda:
    estoy haciendo una aplicación en c sharp y necesito guardar la ruta de una imagen que ha sido escaneada, y en otro formulario guardar la imagen pero esto va conectado a el gestor de base de datos Sql Server 2005, esto lo debo hacer por medio de una imagen que funcionará como botón.

    Muchas Gracias *_*

    1. Hola Yuri, bueno, necesito un poco más de información respecto al escenario que me comentas, qué tipo de tecnología estás utilizando? WinForms ó WPF? tú haces el proceso de escaenar la imágen?, Dame un poco más de info, y vemos qué onda 😛

      Salu2!

  29. Hola Dios les bendiga a todos! Tengo una pregunta. actual mente estoy programando en C# con SqlServer 2008 y cuando hago un proyecto en una computado y me llevo la copia de seguridad de la base de datos de mi proyecto otra pc y la restauro haya, luego abro mi proyecto normal proboca un error hablando que el servidor no se encuentra..ect. GRacias!!! espero respuesta lo antes posible.

  30. Me surgio una duda, al ver el tuto que hiciste para las conexion con el app.config, obviamente se le puede adaptar al win application, En la ultima parte de tutorial, sacaste el codigo, lo puedo meter dentro de un try – catch, en un metodo para la conexion? Estoy creando un aplicacion con tres proyectos, de los cuales, dos son bibliotecas de clase, a lo que te hago esto me intriga, puedo hacer una doble herencia a una clase,? y como podria validar un constructor para datos null que recibo de un web service?

    Espero tu Respuesta pronto

    Pd. Exelente pagina.

    1. Vale, por supuesto que puedes hacer doble herencia, lo que no he entendido bien es lo del constructor del web service, si pudieras ejemplificarlo un poco más, estaría perfecto, salu2!

  31. Una pregunta Héctor
    ¿Por que los campos calculados en la estructura de una tabla de SQL Server, no pueden ser usados en otras expresiones dentro de la misma tabla para calcular nuevos campos calculados?

    Al parecer SQL Server, sigue teniendo problemas con el uso de sus campos y se orienta mas en vender que en dar solución a sus problemas internos, los campos calculados aun declarados como persistentes, no pueden ser usados en otras expresiones, no sucede esto en el motor de base datos SQL Firebird.

  32. hola Hector mi pregunta es la siguiente como puedo crear una pagina web donde tenga todos los accesorios necesarios para una pagina y gracias
    éxito
    🙂

Deja un comentario