标签: wpf-controls

Visibility.Collapsed和Visibility.Hidden之间的区别

WPF Visibility.CollapsedVisibility.HiddenWPF 之间有什么区别?

wpf visibility wpf-controls

274
推荐指数
3
解决办法
12万
查看次数

如何绑定到MVVM中的PasswordBox

我遇到了绑定到PasswordBox的问题.这似乎是一个安全风险,但我正在使用MVVM模式,所以我希望绕过这个.我在这里找到了一些有趣的代码(有没有人用过这个或类似的东西?)

http://www.wpftutorial.net/PasswordBox.html

它在技术上看起来很棒,但我不确定如何检索密码.

我基本上有我的LoginViewModelfor Username和属性Password.Username很好,正在工作,因为它是一个TextBox.

我按照说明使用了上面的代码并输入了这个

<PasswordBox ff:PasswordHelper.Attach="True"
    ff:PasswordHelper.Password="{Binding Path=Password}" Width="130"/>
Run Code Online (Sandbox Code Playgroud)

当我有了PasswordBoxa TextBox,Binding Path=Password然后我的房产LoginViewModel被更新了.

我的代码很简单,基本上我有一个Commandfor my Button.当我按下它时会CanLogin被调用,如果它返回true,则调用它Login.
你可以看到我检查我的房产在Username这里工作得很好.

Login我一起发送到我的服务UsernamePassword,Username包含数据从我ViewPasswordNull|Empty

private DelegateCommand loginCommand;

    public string Username { get; set; }
    public string Password { get; set; }


    public ICommand LoginCommand
    {
        get
        { …
Run Code Online (Sandbox Code Playgroud)

c# passwords wpf mvvm wpf-controls

243
推荐指数
11
解决办法
18万
查看次数

ItemsControl具有水平方向

你知道从ItemsControl继承的任何具有项目水平方向的控件吗?

c# wpf wpf-controls

220
推荐指数
4
解决办法
7万
查看次数

简单(我认为)WPF中的水平线?

创建一个相对简单的数据输入表单,只想用水平线(与HTML中的HR标记不同)将某些部分分开,这些部分会拉伸表单的全长.

我试过这个:

<Line Stretch="Fill" Stroke="Black" X2="1"/>
Run Code Online (Sandbox Code Playgroud)

由于父控件不是固定宽度,因此该行会使窗口拉伸到屏幕的整个宽度.

有没有一种简单的方法可以在不修复父控件/窗口宽度的情况下执行此操作?

wpf xaml wpf-controls

216
推荐指数
4
解决办法
12万
查看次数

ListBox和ListView之间的区别是什么

WPF的ListBox和ListView有什么区别?我发现他们的属性没有任何显着差异.有不同的典型用途吗?

.net wpf wpf-controls

185
推荐指数
3
解决办法
12万
查看次数

对齐堆栈面板中的项目?

我想知道我是否可以在水平导向的StackPanel中有2个控件,以便正确的项目应该停靠在StackPanel的右侧.

我尝试了以下但它不起作用:

<StackPanel Orientation="Horizontal">
    <TextBlock>Left</TextBlock>
    <Button Width="30" HorizontalAlignment="Right">Right<Button>
</StackPanel>
Run Code Online (Sandbox Code Playgroud)

在上面的代码片段中,我希望Button停靠在StackPanel的右侧.

注意:我需要使用StackPanel,而不是Grid等.

wpf layout alignment wpf-controls stackpanel

137
推荐指数
6
解决办法
15万
查看次数

WPF:带滚动条的ItemsControl(ScrollViewer)

我按照这个关于如何将滚动条添加到ItemsControl的小"教程",它在Designer视图中工作,但是在我编译和执行程序时却没有(只显示前几个项目,没有滚动条可以查看更多 - 甚至当VerticalScrollbarVisibility设置为"Visible"而不是"Auto"时).

关于如何解决这个问题的任何想法?


这是我用来显示我的项目的代码(通常我使用Databinding,但是为了查看我的Designer中的项目,我手动添加它们):

<ItemsControl x:Name="itemCtrl" Style="{DynamicResource UsersControlStyle}">
    <ItemsControl.ItemsPanel>
        <ItemsPanelTemplate>
            <StackPanel Orientation="Vertical" HorizontalAlignment="Center" VerticalAlignment="Top">
            </StackPanel>
        </ItemsPanelTemplate>
    </ItemsControl.ItemsPanel>

    <uc:UcSpeler />
    <uc:UcSpeler />
    <uc:UcSpeler />
    <uc:UcSpeler />
    <uc:UcSpeler />
</ItemsControl>
Run Code Online (Sandbox Code Playgroud)

这是我的模板:

<Style x:Key="UsersControlStyle" TargetType="{x:Type ItemsControl}">
    <Setter Property="Template">
        <Setter.Value>
            <ControlTemplate TargetType="{x:Type ItemsControl}">
                <Border SnapsToDevicePixels="true" Background="{TemplateBinding Background}" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" Padding="{TemplateBinding Padding}">
                    <ScrollViewer VerticalScrollBarVisibility="Visible">
                        <ItemsPresenter SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}"/>
                    </ScrollViewer>
                </Border>
            </ControlTemplate>
        </Setter.Value>
    </Setter>
</Style>
Run Code Online (Sandbox Code Playgroud)

wpf itemscontrol scrollviewer wpf-controls

125
推荐指数
2
解决办法
9万
查看次数

RichTextBox(WPF)没有字符串属性"Text"

我正在尝试设置/获取我的RichTextBox的文本,但当我想获得test.Text时,Text不在其属性列表中...

我在C#中使用代码(.net framework 3.5 SP1)

RichTextBox test = new RichTextBox();
Run Code Online (Sandbox Code Playgroud)

不能有 test.Text(?)

你知道怎么可能吗?

c# wpf richtextbox wpf-controls

112
推荐指数
9
解决办法
18万
查看次数

如何使XAML DataGridColumns填充整个DataGrid?

我在XAML(而不是Silverlight)中使用DataGrids和可调整大小的列,如果用户调整屏幕大小,DataGrid将展开.

目前,如果所有DataGrid列的宽度小于DataGrid的宽度,我会看到一个额外的"列",它不可点击并且没有用处.

有谁知道如何使一列始终调整大小以填充所有剩余空间?

c# wpf xaml datagrid wpf-controls

111
推荐指数
5
解决办法
10万
查看次数

格式化TextBlock中的文本

如何TextBlock在WPF应用程序中实现控件内文本的格式化?

例如:我想要粗体显示某些单词,斜体显示某些单词,有些颜色不同,例如:

在此输入图像描述

我的问题背后的原因是这个实际问题:

lblcolorfrom.Content = "Colour From: " + colourChange.ElementAt(3).Value.ToUpper();
Run Code Online (Sandbox Code Playgroud)

我希望字符串的第二部分是粗体,我知道我可以使用两个控件(Labels,TextBlocks等),但我不愿意,因为已经使用了大量的控件.

c# wpf wpf-controls

94
推荐指数
5
解决办法
12万
查看次数