2014-01-16 10 views
0

내 wpf 응용 프로그램에서 textblock 텍스트 속성이 객체의 문자열 속성에 바인딩됩니다. 문자열 속성 값이 "ABC-XYZ2014-HHH"입니다.텍스트 블록 값이 "-"문자가 표시되지 않습니다.

그러나 텍스트 블록이나 텍스트 상자에 값이 올바르게 표시되지 않습니다. 값이 텍스트 블록과 텍스트 상자에 "ABC-XYZ2014-"로 표시됩니다.

레이블에서 액셀러레이터 키로 "_"또는 "-"을 해석하지만 텍스트 블록과 텍스트 상자를 사용하고있는 것으로 나타났습니다. 그러나 두 번째 "-"다음의 값은 텍스트 상자 및 텍스트 상자에 표시되지 않습니다. MessageBox에서 올바른 값을 볼 수 있습니다.

<UserControl x:Class="KaliteKontrol.PresentationLayer.Denetim" 
     xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
     xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
     xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
     xmlns:d="http://schemas.microsoft.com/expression/blend/2008" 
     xmlns:igEditors="http://infragistics.com/Editors" 
     xmlns:ig="http://schemas.infragistics.com/xaml" 
     xmlns:GridControlLib="clr-namespace:CommonLib.Utils;assembly=CommonLib" 
     xmlns:commonLibUtils="clr-namespace:CommonLib.Utils;assembly=CommonLib" 
     xmlns:igDP="http://infragistics.com/DataPresenter" 
     xmlns:sys="clr-namespace:System;assembly=mscorlib" 
     xmlns:i="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity" 
     mc:Ignorable="d" 
     d:DesignHeight="300" d:DesignWidth="300"> 
<UserControl.Resources> 
    <BooleanToVisibilityConverter x:Key="BoolVisibilityConverter" /> 
    <Style TargetType="ContentPresenter"> 
     <Setter Property="RecognizesAccessKey" Value="False" /> 
    </Style> 
</UserControl.Resources> 
<ScrollViewer VerticalScrollBarVisibility="Visible"> 
    <StackPanel x:Name="mainPanel" Style="{StaticResource ResourceKey=MainWindowsStyle}" > 
     <Button> 
      <TextBlock Text="{Binding Path=Denetim.DRef}" /> 
     </Button> 
     <Button IsCancel="True" > 

        <AccessText Margin="10,0,10,0" Text="{Binding Path=Denetim.DRef}"/> 
     </Button> 
     <TextBox Text="{Binding Path=Denetim.DRef}" Width="500" /> 
     <TextBlock Text="{Binding Path=Denetim.DRef}" Width="800" /> 
     <Label Content="{Binding Path=Denetim.DRef}" /> 
    </StackPanel> 
</ScrollViewer> 
</UserControl> 

감사 하기 Onur는

+0

'-'문자가 아닌 문자열의 길이에 문제가있는 것으로 보입니다. –

+1

간단하게 시작하기 위해 TextBox/TextBlock이 충분히 넓습니까? 그리고 그 값이 잘리는 것이 아니라고 확신합니까? –

+0

@Wonko 너비가 충분하다고 확신합니다. 테스트하려면 너비를 화면 너비와 같게 설정하십시오. – user1202147

답변

2

분명히, TextBlock의 텍스트의 끝이 잘 리거나 무언가에 의해 가려지고있다. 동일한 텍스트의 새 TextBlock을 다른 창에 추가하면이 사실을 확인할 수 있습니다.이 창은 바로 작동한다는 것을 알 수 있습니다. 여기서 유일한 질문은 '무엇입니까?은 텍스트의 끝을 숨기고 있습니까?'

TextBlock 끝 부분에 색상이있는 것이 보일 때까지 주변 요소의 Background 속성을 다양한 색상으로 설정하면됩니다. 그러면 어떤 요소가 텍스트의 끝을 숨기고 있는지 알 수 있습니다.

당신은 TextBlockTextBoxWidth을 설정하지만, StackPanel 또는 ScrollViewer를 ON으로 설정하지했다. 내 생각 엔 StackPanel이 아니기 때문에 컨트롤을 사용하여 크기에 맞게 사용할 수 있기 때문에 문제가 발생하는 것 같습니다.

+0

제안 한대로 배경을 다르게 설정합니다. 하지만 겹쳐진 요소는 볼 수 없습니다. 이미지 삽입을 시도했지만 적어도 10 개의 평판이 필요하다고 말합니다. :) 그래서 이미지 링크에 추가했습니다. http://i.imgur.com/Y8oRd54.png – user1202147

+0

Okey 문제를 발견했습니다. 값은 뷰 모델에서 변경됩니다. 올바른 값을 보여줍니다. 나는 미안하다. – user1202147