none
como hacer una notificacion de windows10 RRS feed

Todas las respuestas

  • mira este codigo

    using Windows.Data.Xml.Dom;
    using Windows.UI.Notifications;
    
    namespace ToastDesktop
    {
        internal class Program
        {
            /// You have to add in the .csproj:
            /// <TargetPlatformVersion>10.0.10240.0</TargetPlatformVersion>
            /// I always put it in the <PropertyGroup/> which contains the <TargetFrameworkVersion/>.
            ///
            /// References to add :
            /// - Windows.UI
            /// - Windows.Data
            private static void Main(string[] args)
            {
                string xml = $@"
                    <toast>
                        <visual>
                            <binding template='ToastGeneric'>
                                <text>Some title</text>
                                <text>Lorem ipsum dolor sit amet, consectetur adipiscing elit.</text>
                            </binding>
                        </visual>
                    </toast>";
    
                XmlDocument doc = new XmlDocument();
                doc.LoadXml(xml);
    
                ToastNotification toast = new ToastNotification(doc);
                toast.Tag = "tag";
                toast.Group = "group";
    
                ToastNotificationManager.CreateToastNotifier("ToastDesktop").Show(toast);
            }
        }
    }

    fuente https://gist.github.com/k94ll13nn3/f3dce111e525a02c2bc9

    miércoles, 26 de febrero de 2020 20:14
  • gracias greg_dorian pero no funciono...

    hice una app en windows form y agrege tu codigo... en el lin que enviaste tenia q agregar a las referencias

    Windows.Foundation.UniversalApiContract el proyecto compila y se ejecuta, pero no muestra la notificacion

    sábado, 29 de febrero de 2020 16:27
  • esta es la clase:

    using Windows.Data.Xml.Dom;
    using Windows.UI.Notifications;
    
    namespace notificaciones
    {
        class Notificaciones
        {
            public void VerNotif()
            {
                string xml = $@"
                    <toast>
                        <visual>
                            <binding template='ToastGeneric'>
                                <text>Some title</text>
                                <text>Lorem ipsum dolor sit amet, consectetur adipiscing elit.</text>
                            </binding>
                        </visual>
                    </toast>";
    
                XmlDocument doc = new XmlDocument();
                doc.LoadXml(xml);
    
                ToastNotification toast = new ToastNotification(doc);
                toast.Tag = "tag";
                toast.Group = "group";
    
                ToastNotificationManager.CreateToastNotifier("ToastDesktop").Show(toast);
            }
            
        }
    }

    y este es el formulario, nota: solo tiene un boton para mostrar la notificacion:

    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    using System.Windows.Forms;
    
    namespace notificaciones
    {
        public partial class Form1 : Form
        {
            Notificaciones Notf;
            public Form1()
            {
                InitializeComponent();
                Notf = new Notificaciones();
            }
    
            private void Button1_Click(object sender, EventArgs e)
            {
                Notf.VerNotif();
            }
        }
    }

    sábado, 29 de febrero de 2020 16:29
  • hola

    >>hice una app en windows form y agrege tu codigo... en el lin que enviaste tenia q agregar a las referencias

    El codigo que te sugieren usar aplica a UWP (Plataforma universal de Windows) no a windows application

     Desktop program and toast notification

    no creo que purdas usar ese tipo de notificaciones desde winform, lo mas parecido que tienes es el NotifyIcon

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    domingo, 1 de marzo de 2020 23:44
  • racias Leandro Tuttini, se ve muy prometedor, en cuanto lo pruebe les digo... muchas gracias.
    lunes, 2 de marzo de 2020 0:10
  • ahora pondre los resultados de mi inquietud.

    este el el formulario del ejemplo:

    using System;
    using System.Windows.Forms;
    
    namespace notificaciones
    {
        public partial class Form1 : Form
        {
            Notificaciones Notf;
            Notificaciones2 Notf2;
            Notificaciones3 Notf3;
            public Form1()
            {
                InitializeComponent();
                Notf = new Notificaciones();
                Notf2 = new Notificaciones2();
                Notf3 = new Notificaciones3();
            }
    
            private void Button1_Click(object sender, EventArgs e)
            {
                Notf.VerNotif();  
            }
    
            private void Button2_Click(object sender, EventArgs e)
            {
                Notf2.VerNotif();
            }
    
            private void Button3_Click(object sender, EventArgs e)
            {
                Notf3.VerNotif(Icon);
            }
        }
    }

    aqui le doy las clases menos la "Notificaciones", pq pertenece al codigo q no funcionó:

    using System.Drawing;
    
    using Tulpep.NotificationWindow;
    
    namespace notificaciones
    {
        class Notificaciones2
        {
            PopupNotifier popupNotifier1;
            public void VerNotif()
            {
                popupNotifier1 = new PopupNotifier();
                popupNotifier1.ContentText = "Hola mundo";
                popupNotifier1.BodyColor =  SystemColors.Window;
                popupNotifier1.ContentPadding = new System.Windows.Forms.Padding(12);
                popupNotifier1.Delay = 30000;
                popupNotifier1.BorderColor = SystemColors.ActiveBorder;
                popupNotifier1.HeaderColor = SystemColors.MenuBar;
                popupNotifier1.GradientPower = 10;
                popupNotifier1.Popup();
            }
        }
    }

    desde nutget agregen tulpep...

    using System;
    using System.Collections.Generic;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    using System.Windows.Forms;
    
    namespace notificaciones
    {
        class Notificaciones3
        {
            NotifyIcon Notif;
    
            public void VerNotif(Icon elIcono)
            {
                Notif = new NotifyIcon();
                Notif.Visible = true;
                Notif.Icon = new Icon(elIcono, elIcono.Size);
                Notif.BalloonTipText = "El texto";
                Notif.BalloonTipTitle = "Titulo";
                Notif.BalloonTipIcon = ToolTipIcon.Info;
                Notif.ShowBalloonTip(30000);
            }
        }
    }

    en este ultimo se asemeja mucho a la interface grafica que deceo e incuso se almacena en el panel de notificaciones como en la imagen de ejemplo en la primera publicación, pero deceo agregar como hace la imagen unos botones.



    lunes, 2 de marzo de 2020 18:37