Entrando no primeiro projeto sério do WPF. Parece que faltam muitos controles básicos. Especificamente, estou procurando o controle Numérico UpDown. Houve um lançamento fora da banda que eu perdi? Realmente não sinto vontade de escrever meu próprio controle.
Eu não quero usar o WindowsFormHost e colocar um ctl do WinForm nele. Eu quero que seja totalmente WPF sem qualquer lixo herdado.
obrigado
wpf
controls
numericupdown
updown
AngryHacker
fonte
fonte
Respostas:
Basta usar o
IntegerUpDown
controle no kit de ferramentas xtended wpf. Você pode usá-lo assim:Adicione ao seu XAML o seguinte espaço para nome:
xmlns:xctk="http://schemas.xceed.com/wpf/xaml/toolkit"
No seu XAML, onde você deseja o controle, use:
<xctk:IntegerUpDown Name="myUpDownControl" />
fonte
Eu fiz o meu;
o xaml
e o código por trás
fonte
Este é um exemplo do meu próprio UserControl com captura de teclas Para cima e Para baixo.
Código Xaml:
E o código:
fonte
fonte
As respostas dadas estão OK. No entanto, eu queria que os botões ocultassem automaticamente quando o mouse sair do controle. Aqui está o meu código com base na resposta vercin acima:
Estilo
Código
fonte
Use
VerticalScrollBar
com oTextBlock
controle no WPF. No seu código por trás, adicione o seguinte código:No construtor, defina um manipulador de eventos para a barra de rolagem:
Em seguida, no manipulador de eventos, adicione:
Aqui está o trecho original do meu código ... faça as alterações necessárias .. :)
fonte
Você pode usar o controle NumericUpDown para WPF gravado por mim como parte da biblioteca WPFControls .
fonte
Peça desculpas por continuar respondendo perguntas de 9 anos.
Eu segui a resposta de @ Micheal e funciona.
Eu faço isso como UserControl, onde posso arrastar e soltar como um elemento de controles. Eu uso o Tema MaterialDesign da Nuget para obter o efeito de ondulação do ícone e do botão Chevron.
O NumericUpDown em execução do Micheal com modificação será o seguinte: -
O código para controle do usuário: -
TemplateNumericUpDown.xaml
TemplateNumericUpDown.cs
No MyPageDesign.xaml, arraste e solte o usercontrol criado terá
<UserControlTemplate:TemplateNumericUpDown HorizontalAlignment="Left" Height="100" VerticalAlignment="Top" Width="100"/>
Para obter o valor do modelo, eu uso
Ainda não estou em boa habilidade para vincular a Altura do controle com base no elemento FontSize, então defino manualmente o tamanho da fonte da minha página no usercontrol.
** Nota: - Alterei o nome "Arquivar" para Arquivar no meu programa =)
fonte
Eu tenho uma solução ingênua, mas útil. Aqui está o código:
fonte
Aqui está outro controle de código aberto que possui muitos métodos diferentes de entrada (arraste, roda do mouse, teclas do cursor, edição de caixa de texto), suporta muitos tipos de dados e casos de uso:
https://github.com/Dirkster99/NumericUpDownLib
fonte
Apenas uma amostra pragmática para fazer:
-Clique com o botão direito do mouse em seu projeto (em Solução), selecione "Gerenciar pacotes de nuget ..."
-No menu, clique na guia Procurar, procure por "wpftoolkit", selecione "
Extended.Wpf.Toolkit
"-Instale-o!
-Clique com o botão direito na sua caixa de ferramentas de controle do usuário , selecione "Adicionar guia .." e chame-o de "WPF Toolkit"
-Clique com o botão direito do mouse na nova guia "WPF Toolkit", selecione "Escolher itens ..."
-No menu, clique no botão "Procurar ...", procure a pasta DLL de nugets, selecione tudo "
...\packages\Extended.Wpf.Toolkit.3.5.0\lib\net40\*.dll
"Ignorar avisos sobre algumas DLLs podem não conter controles do usuário!
Pronto :)
fonte
Vá para o gerenciador NugetPackage do seu projeto-> Navegue e pesquise mahApps.Metro -> pacote de instalação no seu projeto. Você verá Referência adicionada: MahApps.Metro. Então, no seu código XAML, adicione:
"xmlns:mah="http://metro.mahapps.com/winfx/xaml/controls"
Onde você deseja usar seu objeto, adicione:
Aproveite a extensibilidade total do objeto (Ligações, gatilhos e assim por diante ...).
fonte