2013-06-29 3 views
0

저는이 주제에 대해 이미 광범위하게 인터넷을 검색했지만 여전히 달성하려고 노력하는 것에 가까이 다가 갈 수있는 솔루션을 찾을 수 없었습니다.C# Sudoku WPF 응용 프로그램 및 디자인

스도쿠 응용 프로그램을 WPF and C#에 만들고 싶습니다. 내 주요한 문제는 그리드를 만드는 것입니다.

격자 그 자체는 9 x 9이어야하며 editable structure textbox-like이 있어야합니다. 따라서 사용자 정의 설계 격자 (실제 스도쿠처럼 선을 그릴 수 있습니다. - 셀 사이의 블록과 선 사이에 두꺼운 선이있는 것처럼
http://www.mathworks.com/matlabcentral/fx_files/8558/2/sudoku.png (캔트 포스트 이미지 아직)

그리고 각 필드는 텍스트 상자와 같은 역할을하고있는 것, 그래서 수 입력 값이와 나중에 세포의 배열로 격자를 만들고, 읽을이 예이다.

So the question is: What controls to use? How to make them textbox-like(considering those are just drawn lines) or how to set their design? Also, maybe there's an easier solution to my problem?

+0

하나의 접근법은 3x3의 중첩입니다 UniformGrid 컨트롤. 그리고 물론 이전에 (http://channel9.msdn.com/coding4fun/articles/Building-a-WPF-Sudoku-Game-Part-1-Introduction-to-WPF-and-XAML)가 완료되었습니다. –

답변

2

간단하게 유지하려면 항상 그리드 안의 텍스트 상자를 사용할 수 있습니다 ... 주 그리드에서 3x3 사용자 정의 컨트롤을 사용하고 테두리 두께를 3으로 설정하고 각 컨트롤 내부에 텍스트 상자가있는 3x3 그리드가 있어야합니다. 두께가 1로 설정, 또는 점선, 또는

이 당신의 UserControl XAML에있을 것입니다 방법은 ... 자신에게 맞는 어떤된다

<Border BorderThickness="3" BorderBrush="Black"> 
<Grid> 
    <Grid.ColumnDefinitions> 
     <ColumnDefinition></ColumnDefinition> 
     <ColumnDefinition></ColumnDefinition> 
     <ColumnDefinition> </ColumnDefinition> 
    </Grid.ColumnDefinitions> 
    <Grid.RowDefinitions> 
     <RowDefinition></RowDefinition> 
     <RowDefinition></RowDefinition> 
     <RowDefinition></RowDefinition> 
    </Grid.RowDefinitions> 
     <TextBox Grid.Row="0" Grid.Column="0" BorderBrush="Blue" BorderThickness="1"></TextBox> 
     <TextBox Grid.Row="0" Grid.Column="1" BorderBrush="Blue" BorderThickness="1"></TextBox> 
     <TextBox Grid.Row="0" Grid.Column="2" BorderBrush="Blue" BorderThickness="1"></TextBox> 
     <TextBox Grid.Row="1" Grid.Column="0" BorderBrush="Blue" BorderThickness="1"></TextBox> 
     <TextBox Grid.Row="1" Grid.Column="1" BorderBrush="Blue" BorderThickness="1"></TextBox> 
     <TextBox Grid.Row="1" Grid.Column="2" BorderBrush="Blue" BorderThickness="1"></TextBox> 
     <TextBox Grid.Row="2" Grid.Column="0" BorderBrush="Blue" BorderThickness="1"></TextBox> 
     <TextBox Grid.Row="2" Grid.Column="1" BorderBrush="Blue" BorderThickness="1"></TextBox> 
     <TextBox Grid.Row="2" Grid.Column="2" BorderBrush="Blue" BorderThickness="1"></TextBox> 
</Grid> 

을 그리고 단지 그 중 3 × 3이 ..