在另一个页面中显示条目值
Display an entry value in another page
我正在创建一个显示条目和按钮的简单 xaml 页面,我想为按钮创建一个事件以将条目值显示到另一个页面。
我应该使用 MVVM 还是有其他方法可以做到这一点。
这是第一页:
<!-- Entry to get machine name -->
<border:SfBorder
BackgroundColor="{DynamicResource Gray-Bg}"
BorderColor="{Binding Source={x:Reference PasswordEntry}, Path=IsFocused, Converter={StaticResource ColorConverter}, ConverterParameter=3}"
Style="{StaticResource LoginFormBorderlessEntryBorderStyle}">
<Grid ColumnDefinitions="*, Auto">
<control:BorderlessEntry
Margin="15,0"
HeightRequest="40"
Placeholder="Le nom de la machine"
Style="{StaticResource BorderlessEntryStyle}"/>
</control:BorderlessEntry>
</Grid>
</border:SfBorder>
</StackLayout>
<!-- Scanner button -->
<buttons:SfButton
Grid.Row="5"
Margin="0,16"
HorizontalOptions="Fill"
Style="{StaticResource GradientButtonStyle}"
Text="Scanner le code QR"
Clicked="Scan"
/>
</Grid>
</StackLayout>
按钮中的“扫描”方法:
private void Scan(object sender, EventArgs e)
{Application.Current.MainPage = new NavigationPage(new Scanner());}
扫描仪页面:
<StackLayout>
<Frame BackgroundColor="#2196F3" Padding="24" CornerRadius="0">
<Label ............ the entry value...... />
<Label x:Name="scanResultText" FontSize="Large"/>
<zxing:ZXingScannerView IsScanning="True" OnScanResult="ZXingScannerView_OnScanResult"/>
</StackLayout>
只需通过页面构造函数传递一个值
var value = MyEntryControl.Text;
Application.Current.MainPage = new NavigationPage(new Scanner(value))
并在 Scanner
public Scanner(string value)
{
InitializeComponent();
MyLabelControl.Text = value;
}
我正在创建一个显示条目和按钮的简单 xaml 页面,我想为按钮创建一个事件以将条目值显示到另一个页面。 我应该使用 MVVM 还是有其他方法可以做到这一点。
这是第一页:
<!-- Entry to get machine name -->
<border:SfBorder
BackgroundColor="{DynamicResource Gray-Bg}"
BorderColor="{Binding Source={x:Reference PasswordEntry}, Path=IsFocused, Converter={StaticResource ColorConverter}, ConverterParameter=3}"
Style="{StaticResource LoginFormBorderlessEntryBorderStyle}">
<Grid ColumnDefinitions="*, Auto">
<control:BorderlessEntry
Margin="15,0"
HeightRequest="40"
Placeholder="Le nom de la machine"
Style="{StaticResource BorderlessEntryStyle}"/>
</control:BorderlessEntry>
</Grid>
</border:SfBorder>
</StackLayout>
<!-- Scanner button -->
<buttons:SfButton
Grid.Row="5"
Margin="0,16"
HorizontalOptions="Fill"
Style="{StaticResource GradientButtonStyle}"
Text="Scanner le code QR"
Clicked="Scan"
/>
</Grid>
</StackLayout>
按钮中的“扫描”方法:
private void Scan(object sender, EventArgs e)
{Application.Current.MainPage = new NavigationPage(new Scanner());}
扫描仪页面:
<StackLayout>
<Frame BackgroundColor="#2196F3" Padding="24" CornerRadius="0">
<Label ............ the entry value...... />
<Label x:Name="scanResultText" FontSize="Large"/>
<zxing:ZXingScannerView IsScanning="True" OnScanResult="ZXingScannerView_OnScanResult"/>
</StackLayout>
只需通过页面构造函数传递一个值
var value = MyEntryControl.Text;
Application.Current.MainPage = new NavigationPage(new Scanner(value))
并在 Scanner
public Scanner(string value)
{
InitializeComponent();
MyLabelControl.Text = value;
}