WPF를 사용하여 ListBox
컨트롤에 DataTemplate
컨트롤이 있습니다. 관련 XAML 코드는 다음과 같습니다 :WPF (데이터 템플릿)가있는 ListBox에서 TextBlock을 인라인 편집
<ListBox Name="_todoList" Grid.Row="1" BorderThickness="2"
Drop="todoList_Drop" AllowDrop="True"
HorizontalContentAlignment="Stretch"
ScrollViewer.HorizontalScrollBarVisibility="Disabled"
AlternationCount="2">
<ListBox.ItemTemplate>
<DataTemplate>
<Grid Margin="4">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<CheckBox Grid.Column="0" Checked="CheckBox_Check" />
<TextBlock Name="descriptionBlock"
Grid.Column="1"
Text="{Binding Description}"
Cursor="Hand" FontSize="14"
ToolTip="{Binding Description}"
MouseDown="TextBlock_MouseDown" />
</Grid>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
는 내가 뭘하려고하는 것은 TextBox
로 바뀝니다하는 클릭 (더블)에 TextBlock
응답을 할 수 있습니다. 그런 다음 설명을 편집하고 돌아가거나 포커스를 변경하여 변경 사항을 적용 할 수 있습니다.
나는 TextBlock의 같은 위치에 TextBox
요소를 추가하고 가시성 Collapsed
만드는 시도,하지만 사용자가 TextBlock
를 클릭했을 때 올바른 TextBox
로 이동하는 방법을 모르겠어요. 즉, 사용자가 특정 TextBlock
을 클릭했음을 알고 있습니다. 현재 입니다.TextBox
을 표시합니까?
,
-Ko9
팁으로 'pre' 태그를 사용하고 꺾쇠 괄호를 명시 적으로 이스케이프 처리하는 대신 XAML을 편집기에 직접 붙여넣고 101010 버튼을 사용하여 코드로 포맷 할 수 있습니다. – itowlson