72 messaggi dal 22 marzo 2012
Buongiorno Lista

ho risolto il problema che avevo e lo posto qui per i posteri (ove ne avessero bisogno  )


using System;
using System.Collections.Generic;
using System.Linq;
using System.Windows;
using System.Windows.Markup;



public class DictionaryRequest
{
    public string Culture { get; set; }
    public string Name { get; set; }
    public string Control { get; set; }
}



public GetControlInfo(Window W1)
        {
            List<DictionaryRequest> _dic = new List<DictionaryRequest>();
            string xml = XamlWriter.Save(W1);
            string[] j = { "<", ">" };
            string[] l = xml.Split(j, StringSplitOptions.RemoveEmptyEntries);

            for (int i = 0; i < l.Count(); i++)
            {
                if (l[i].Contains("Tag") == true)
                {
                    DictionaryRequest _dics = new DictionaryRequest();

                    int Start = 0;
                    int End = 0;

                    // Estraggo il dato da NAME
                    Start = l[i].IndexOf(@"Name=") + 6;
                    End = l[i].IndexOf(@"""", Start);
                    _dics.Control = l[i].Substring(Start, End - Start);

                    // Estraggo il dato da TAG
                    Start = l[i].IndexOf(@"Tag=") + 5;
                    End = l[i].IndexOf(@"""", Start);
                    _dics.Name = l[i].Substring(Start, End - Start);

                    _dics.Culture = Culture;

                    _dic.Add(_dics);
                }

            }

            return _dic;
        }



Logicamente se servissero altre proprietà da leggere nei controlli basta cambiarle e/o aggiungerle nella ricerca.

Si potrebbe anche modificare la function passandole un Array contenente il nome della proprietà, i caratteri da aggiungere e dove salvare i dati.

Sperando di essere utile alla comunità e aperto a qualsiasi modifica e/o miglioria invio cordiali saluti

Perini Luca

Perini Luca

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.