Как создать текстовое поле SMS для Windows Phone 7 - PullRequest
1 голос
/ 28 июня 2011

Я ищу, чтобы создать элемент управления, похожий на текстовое поле «пузырь», найденное в приложении SMS по умолчанию. Я смог приблизиться, создав путь в форме пузыря с текстовым полем внутри, но у меня возникли проблемы с размером текстового поля. Я установил «AcceptsReturn» в текстовом поле на True. Я заметил, что когда количество строк в текстовом поле увеличивается, текстовое поле исчезает из вида (под SIP). Это не то, как текстовое поле SMS ведет себя - оно, кажется, всегда прокручивается вверх, чтобы показать последнюю строку (тогда как мой элемент управления становится скрытым). Был бы признателен за любые указатели ...

[Update] Удалось создать это, настроив шаблон TextBox:

                        <Grid.RowDefinitions>
                            <RowDefinition Height="Auto"/>
                            <RowDefinition Height="*"/>
                            <RowDefinition Height="Auto"/>
                        </Grid.RowDefinitions>
                        <Rectangle Grid.Row="1" StrokeThickness="0" Fill="{TemplateBinding Background}"/>
                        <ContentControl Grid.Row="1" x:Name="ContentElement" HorizontalContentAlignment="Stretch" Margin="0" Padding="{StaticResource PhoneTouchTargetLargeOverhang}" VerticalContentAlignment="Stretch" FontSize="{StaticResource PhoneFontSizeNormal}" Background="Black" />
                        <Path Data="M161.25,90.75 L184.25,90.75 L184.25,100.75" HorizontalAlignment="Left"  Grid.Row="0" Stretch="Fill" StrokeThickness="0" UseLayoutRounding="False" Width="23" RenderTransformOrigin="0.5,0.5" Fill="{TemplateBinding Background}" Margin="54.75,0,0,0">
                            <Path.RenderTransform>
                                <CompositeTransform Rotation="180"/>
                            </Path.RenderTransform>
                        </Path>
                        <Rectangle Grid.Row="2" Fill="{TemplateBinding Background}"/>
                        <TextBlock x:Name="txtTimeStamp" Grid.Row="2" TextWrapping="Wrap" Padding="{TemplateBinding Padding}" FontSize="{StaticResource PhoneFontSizeSmall}" Text="{Binding Timestamp, Converter={StaticResource dateTimeConverter}, Mode=TwoWay}">
                            <TextBlock.Foreground>
                                <SolidColorBrush Color="{StaticResource PhoneTextBoxForegroundColor}"/>
                            </TextBlock.Foreground>
                        </TextBlock>


                    </Grid>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...