카테고리 아카이브: XAML

목록 상자에 프로그래밍 방식으로 Windows 스토어 애플 리 케이 션에 대 한 ListboxItems의 높이 설정

Windows 저장소 응용 프로그램에서 일하고 있어요 그리고 응용 프로그램에서 수행 하려는 것 들 중 하나는 것 들을 작동 하는 사용자 상태 메시지 및 다른 정보 음식 표시 로그 표시. 이 위해, 다음과 같이 ListBox를 추가:

<ListBox x:이름 ="GameStateLog" HorizontalAlignment ="센터" 높이 ="221" 값 ="맨 위로" 폭 ="499" 패딩 ="0" FontSize ="10">

 

런타임에 목록 상자를 채우는 데 C# 코드의 라인을 따라 했다:

GameStateLog.Items.Insert(0, GameStateCounter     + ": 새로운 게임 상태: 플레이어를 기다리고 1 이름");

이 충분히 잘 밖으로 일 하지만 UI 개별 메시지 주위 패딩의 미친 금액을 그들은 추가 했다. 최종 사용자가 이러한 항목을 선택할 수 있지만 이해가 되지 않습니다 그냥 실행 일련의 로그 메시지를 표시 하려면 사용자가이 선택 하지 않습니다-그 게 말, 그냥 그들을 볼합니다. 그것은 이상 하 게도 이것을 할 수 있는 쉬운 방법을 찾기 어렵다 고 틀림 없이, 내가 그것을 발견 하는 방법은 반드시 "쉬운" 아니지만 내가를 확인 작업. 중요가이 게시에서 온 여기 (http://social.msdn.microsoft.com/Forums/en-US/wpf/thread/c4a6f694-bd46-4779-ab83-b1c2fcb2397c) 밥 Relyea에서. ListBox에 항목 컬렉션에 문자열을 추가 하는 대신, ListBoxItems 추가. 문자열을 추가 하 여, ListBox 자체에 자체 ListBoxItem을 생성 했다. 사실 그 ListBoxItem에 대해 아무것도 영향을 미칠 수 없습니다.. 새로운 코드는:

        개인 void AddGameStateLogMessage(문자열 메시지)
        {
            ListBoxItem 리 = 새로운 내용 ListBoxItem();
            리입니다.콘텐츠 메시지 =;
            리입니다.MaxHeight = 25;

            두께 thisPadding = 새로운 내용 두께(5, 0, 5, 0);
            리입니다.패딩 = thisPadding;

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

 

여기 내가 만드는 ListBoxItem의 삽입 하 고. 나는 그것의 두께 설정 하 여 초과 패딩 제거.

이것은 매우 유연한 코딩 특정 유형의 메시지를 강조 하기 위해 몇 가지 색상을 할 않을 ListBoxItems를 직접 추가 하 여 스타일을 내가 원하는 방식으로 도착.

희망이 누군가가 도움이!

</끝>

undefined내 블로그를 구독.

에 지 저 귐에 나를 따르라합니다 http://www.twitter.com/pagalvin