0

是以下情况:

我有一个带有三个文本框的 WPF 项目。在这些文本框中是这样的内容:

文本框 1:

net.tcp://server1:61594/printerengine/printerserver

文本框 2:

net.tcp://server1:61594/printerengine/printeradmin

文本框 3:

net.tcp://server1:61594/printerengine/printeradmin

由于路径始终保持不变并且只有服务器名称更改的原因,应该有一个仅用于服务器名称的额外文本框。

在文本框 4 中应仅填写服务器名称:

文本框 4:

服务器1

如果要更改服务器名称,应该可以在文本框 4 中更改它,它应该会自动重命名文本框 1-3 中路径中的服务器名称。

我希望你能理解我并给我一点帮助。

问候,拉斯

谢谢您的回答。不确定它是否对我有帮助,但我找到了这个教程:

http://msdn.microsoft.com/de-de/library/system.windows.data.ivalueconverter.aspx

这是用 C# 编写的,但我将其重写为 WPF:

这是我的代码:

Public Class DateConverter
   Implements IValueConverter

   Public Function Convert(value As Object, targetType As Type, parameter As Object) As Object
      Dim [date] As DateTime = DirectCast(value, DateTime)
      Return [date].ToShortDateString()
   End Function
   Public Function ConvertBack(value As Object, targetType As Type, parameter As Object) As Object
      Dim strValue As String = value.ToString()
      Dim resultDateTime As DateTime
      If DateTime.TryParse(strValue, resultDateTime) Then
         Return resultDateTime
      End If
      Return value
   End Function

   Public Function Convert1(value As Object, targetType As System.Type, parameter As Object, culture As System.Globalization.CultureInfo) As Object Implements System.Windows.Data.IValueConverter.Convert

   End Function

   Public Function ConvertBack1(value As Object, targetType As System.Type, parameter As Object, culture As System.Globalization.CultureInfo) As Object Implements System.Windows.Data.IValueConverter.ConvertBack

   End Function
End Class

这是我的 XAML:

<Window x:Class="MainWindow"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Title="MainWindow" Height="350" Width="525">
   <Grid>
      <src:DateConverter x:Key="dateConverter"/>
      <TextBlock Grid.Row="2" Grid.Column="0" Margin="0,0,8,0"
           Name="startDateTitle"
           Style="{StaticResource smallTitleStyle}">Start Date:</TextBlock>
      <TextBlock Name="StartDateDTKey" Grid.Row="2" Grid.Column="1" 
    Text="{Binding Path=StartDate, Converter={StaticResource dateConverter}}" 
    Style="{StaticResource textStyleTextBlock}"/>

   </Grid>
</Window>

不是真的工作。谁能帮助我?谢谢你。

问候,拉斯

4

1 回答 1

0

尝试使用StringFormat,像这样 -

<TextBlock Text="{Binding Path=Text, ElementName=Textbox4Name, 
                   StringFormat='net.tcp://\{0\}/printerengine/printerserver' />

参考 - http://elegantcode.com/2009/04/07/wpf-stringformat-in-xaml-with-the-stringformat-attribute/

于 2012-07-06T08:27:43.833 回答