Не удается сфокусироваться на TextBox внутри ListBox с помощью Silverlight

У меня небольшая проблема в silverlight с привязкой к данным ListBox, содержащей элементы TextBox привязки к данным. Элементы отображаются правильно в списке, и TextBox заполняется правильно, но я не могу сфокусироваться на TextBox в списке. Если я наведу курсор на края TextBox, он будет подсвечен, но не позволит мне щелкнуть по нему, чтобы отредактировать текст. Любые идеи?

Мой XAML выглядит так:

<ListBox x:Name="listImages">
  <ListBox.ItemTemplate>
    <DataTemplate>
      <Grid x:Name="LayoutRoot" Background="White">
        <Image Height="102" HorizontalAlignment="Left" Name="imgThumb" Stretch="UniformToFill" VerticalAlignment="Top" Width="155" Source="{Binding ImageFilename, Converter={StaticResource ImageConverter}}" />
        <TextBox Height="23" HorizontalAlignment="Left" Margin="154,25,0,0" Name="txtAltText" VerticalAlignment="Top" Width="239" Text="{Binding Alt}" />
        <dataInput:Label Height="19" HorizontalAlignment="Left" Margin="154,6,0,0" Name="lblAltText" VerticalAlignment="Top" Width="239" Content="Alt Text" />
      </Grid>
    </DataTemplate>
  </ListBox.ItemTemplate>
</ListBox>

person Steve Temple    schedule 28.04.2010    source источник
comment
Какую версию Silverlight вы используете?   -  person Jehof    schedule 28.04.2010
comment
Я использую для этого Silverlight 4   -  person Steve Temple    schedule 28.04.2010
comment
Можете ли вы в тестовых целях удалить изображение? У меня без изображения все работает нормально.   -  person AnthonyWJones    schedule 28.04.2010
comment
Спасибо, Энтони, ты указал мне правильное направление. Возникла проблема с сеткой. Я заменил сетку на StackPanel, и она отлично работает с Image in.   -  person Steve Temple    schedule 29.04.2010


Ответы (1)


Я поменял местами содержимое для этого, и теперь он работает, я думаю, что возникла проблема с контейнером Grid:

<ListBox x:Name="listImages">
  <ListBox.ItemTemplate>
    <DataTemplate>
      <StackPanel Orientation="Horizontal">
        <Image Height="102" HorizontalAlignment="Left" Name="imgThumb" Stretch="UniformToFill" VerticalAlignment="Top" Width="155" Source="{Binding ImageFilename, Converter={StaticResource ImageConverter}}" Margin="5" />
        <StackPanel>
          <dataInput:Label Height="19" HorizontalAlignment="Left" Name="lblAltText" VerticalAlignment="Top" Width="239" Content="Alt Text" />
          <TextBox Height="23" HorizontalAlignment="Stretch" Name="txtAltText" VerticalAlignment="Top" Text="{Binding Alt}" />
        </StackPanel>
      </StackPanel>
    </DataTemplate>
  </ListBox.ItemTemplate>
</ListBox>
person Steve Temple    schedule 28.04.2010