我尝试创建简单的文字并移入我的Progress Bar
值,因此Progree Bar
Grid
和TextBlock
<Controls:MetroProgressBar
Name="progressBar"
Width="500"
Height="2"
Value="0"
HorizontalAlignment="Center"
VerticalAlignment="Center"
Foreground="Gray"
Margin="0,0,0,0"/>
<Grid Name="myGrid" Margin="0,0,0,0">
<TextBlock
Name="tbTest"
Text="{Binding ElementName=progressBar, Path=Value}"
Foreground="White"
HorizontalAlignment="Left"
VerticalAlignment="Center"
FontSize="16"
Margin="255,-35,0,0" />
</Grid>
ProgressBar
现在在我的计时器事件中,我正在更改Grid
值并尝试移动if (progressBar.Value < 100)
{
progressBar.Value += 10;
Grid grid = VisualTreeHelper.GetChild(progressBar, 0) as Grid;
if (grid != null)
{
var decorator = grid.Children.OfType<FrameworkElement>().FirstOrDefault(x => x.Name == "PART_Indicator");
if (decorator != null)
myGrid.RenderTransform = new TranslateTransform(decorator.ActualWidth, myGrid.RenderTransform.Value.OffsetY);
}
}
:
grid
现在虽然TextBlock
变量不为空,但我的 function test() {
var str = "ampere 13th\'.";
alert(str.replace(/\\/g, "\").replace("'", "'").replace(".", ".").replace("%", "%").replace("\"", """));
}
现在仍在移动。
答案 0 :(得分:0)
你有什么作品,你只是因为TextBlock
的边缘而没有看到它。如果你摆脱它然后它移动,无论它是否正在做你想要的,我不确定。
我建议清理一些XAML,利润是好事,但可能导致很难找到问题。我建议将ProgressBar
和Grid
包裹在StackPanel
中并删除所有内容的边距。
<StackPanel HorizontalAlignment="Center" VerticalAlignment="Center">
<Grid Name="myGrid">
<TextBlock Name="tbTest"
HorizontalAlignment="Left"
VerticalAlignment="Center"
FontSize="16"
Foreground="White"
Text="{Binding ElementName=progressBar,
Path=Value}" />
</Grid>
<ProgressBar Name="progressBar"
Width="500"
Height="2"
HorizontalAlignment="Center"
VerticalAlignment="Center"
Foreground="Gray"
Value="0" />
</StackPanel>
我保留了其余的代码,并且有效。