Arquivos de etiquetas: Windows Store

Fácil e rápida: Define o tamaño dun elementos nunha caixa de lista nun Windows App Store

Nunha aplicación Windows Store Estou creando, Quero mostrar ao usuario varias mensaxes informativas.  Peguei unha caixa de lista como a ferramenta para amosar que, para que poidan percorrelo los e todas esas cousas boas. 

As mensaxes son meramente informativos, por iso non hai necesidade de ofrecer todo o que o espazo en branco extra en torno a eles, xa que o usuario non pode selecciona-los para calquera cousa.  O comportamento por defecto do listbox ofrece unha cantidade substancial de recheo e quería desfacerse del.  Ben .... non pode facer este tipo de cousas no listbox directamente.  Con todo, podes facelo cos elementos que engadir:

        privado invalidar AddGameStateLogMessage(corda theMessage)
        {
            Textbox t = novo Textbox();
            t.Text = GameStateCounter     + ": " + theMessage;
            t.TextWrapping = TextWrapping.Wrap;
            t.MinWidth = 400;
            Espesor thisPadding = novo Espesor(5, 0, 5, 0);
            t.Padding = thisPadding;
            t.FontSize = 12;

            ListBoxItem que = novo ListBoxItem();
            li.Content = t;
            li.MaxHeight = 25;
            thisPadding = novo Espesor(5, 0, 5, 0);
            li.Padding = thisPadding;

            GameStateLog.Items.Insert(0,li);
        }

na supra, Estou creando un textbox e definindo o seu tipo de letra, seu recheo, etc.

Seguinte, Eu creo un ListBoxItem e establecer o seu contido ao textbox formato.

Finalmente, Insiro o ListBoxItem ao listbox.  (Quero mostrar as mensaxes máis recentes na parte superior da lista, de aí o Insert(0,li) no canto dun simple Add() invocación.).

Eu estarei mellorar iso un pouco antes de eu estou realmente contento co comportamento listbox pero o estándar mostrado enriba foi moi proveitosa.  Esperemos que alguén pensa útil.

</final>

undefinedRexístrate para o meu blog.

Siga-me no Twitter http://www.twitter.com/pagalvin

Axustar a altura dos ListBoxItems Nun listbox programación para Windows App Store

I’m working on a windows store application and one of the things I want to do in the app is display a log that shows status messages and other informational tidbits as the user works things. Para este fin, Eu engade unha caixa de lista do seguinte xeito:

<Listbox x:Name ="GameStateLog" HorizontalAlignment ="Centro" Height ="221" VerticalAlignment ="Arriba" Width ="499" Padding ="0" FontSize ="10">

 

O código C # para cubrir o cadro de listaxe en tempo de execución foi ao longo das liñas de:

GameStateLog.Items.Insert(0, GameStateCounter     + ": Novo estado do xogo: á espera de xogadores 1 nome");

This worked out fine enough but the UI showed a crazy amount of padding around the individual messages as they were added. Isto ten sentido se eu queira que os usuarios finais para poder seleccionar estes elementos, pero non ten sentido cando eu só quero te amosar unha serie de mensaxes de log en execución - os usuarios non van seleccionar eses, just view them. Era estrañamente difícil atopar un xeito doado de facer, e, posiblemente,, the way I found it isn’t necessarily “easy” but I got it working OK. A clave da comprensión veu esta mensaxe aquí (http://social.msdn.microsoft.com/Forums/en-US/wpf/thread/c4a6f694-bd46-4779-ab83-b1c2fcb2397c) from Bob Relyea. No canto de engadir cordas para a colección de elementos na listbox, add ListBoxItems. Engadindo unha cadea, the ListBox was creating its own ListBoxItem on its own. I wasn’t able to affect anything about that ListBoxItem after the fact. O novo código é:

        privado invalidar AddGameStateLogMessage(corda theMessage)
        {
            ListBoxItem que = novo ListBoxItem();
            li.Content = theMessage;
            li.MaxHeight = 25;

            Espesor thisPadding = novo Espesor(5, 0, 5, 0);
            li.Padding = thisPadding;

            GameStateLog.Items.Insert(0,li);
        }

 

Here I’m creating ListBoxItem’s and inserting them. Tirei o exceso de enchido, que define o seu grosor.

Iso é moi flexible como eu pretendo facer algúns códigos de cor para destacar certos tipos de mensaxes e engadindo directamente ListBoxItems comezar a estilo-do xeito que quero.

Espero que isto axude alguén!

</final>

undefinedRexístrate para o meu blog.

Siga-me no Twitter http://www.twitter.com/pagalvin