有没有办法确定是否ToggleButton通过DelegateCommands 检查/取消检查?
TIA,迈克
下面的XAML代码.我正在使用ItemsControl并绑定到一个集合.我基本上想要一种方法来获得每个按钮点击时的切换状态.
<ScrollViewer VerticalScrollBarVisibility="Auto">
<ItemsControl ItemsSource="{Binding Modifiers, Mode=TwoWay}">
<ItemsControl.Template>
<ControlTemplate>
<ScrollViewer ScrollViewer.VerticalScrollBarVisibility="Auto">
<WrapPanel Margin="10" Width="{TemplateBinding Width}"
Height="{TemplateBinding Height}"
FlowDirection="LeftToRight" IsItemsHost="true">
</WrapPanel>
</ScrollViewer>
</ControlTemplate>
</ItemsControl.Template>
<ItemsControl.ItemTemplate>
<DataTemplate>
<ToggleButton FontSize="18" Opacity="0.8"
Command="{Binding DataContext.ModifierToggleCommand,
RelativeSource={RelativeSource FindAncestor,
AncestorType={x:Type Views:ModifiersView}}}"
CommandParameter="{Binding}" Height="80" Width="200" Margin="5"
Content="{Binding Path=ModifierName}" />
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
</ScrollViewer>
Run Code Online (Sandbox Code Playgroud) ToggleButton 支持 ICommand,因此我创建了许多命令,例如 TogglePlayPause、ToggleMute,它工作正常,但我也需要绑定 IsChecked 属性,以便其选中状态始终显示正确的状态。但是当我为 ToggleButton 创建 OneWay 绑定模式并且按下 ToggleButton 时,绑定将会丢失。
问题是为什么ToggleButton支持ICommand但不支持OneWay绑定?我可以设置 TwoWay 绑定,但是当 ToggleButton 使用 Command 时这是个坏主意,因为 Command 处理的实际操作不应该与 TwoWay 绑定重复,有时也是不可能的。在我的例子中 Command=TogglePlayPause IsChecked={Bind to IsMediaPlaying} IsMediaPlaying 应该是只读的。
那么请告诉我如何将 ToggleButton 与 Command 一起使用并绑定其 IsChecked 属性?
我通过使用使用选择器定义的drawable自定义了Toggle按钮.我使用这个drawable作为Toggle按钮的背景.
<ToggleButton
android:id="@+id/mailbox:toggle_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="bottom"
android:layout_weight="1"
android:background="@drawable/toggle_background"
android:gravity="center_horizontal|center_vertical" />
Run Code Online (Sandbox Code Playgroud)
toggle_background在这里定义:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:drawable="@drawable/img1"
android:state_checked="true" />
<item
android:drawable="@drawable/img2"
android:state_checked="false" />
</selector>
Run Code Online (Sandbox Code Playgroud)
问题是图像总是被拉伸.有没有办法为两个未拉伸的状态定义图像?
我需要的是一个背景,它将被拉伸,并在按钮的中心一个不能拉伸的图标.
可能吗?
我已经为我的功能区添加了一个切换按钮,现在,我想将其状态发送到另一个对象.代码如下.
public void Butt_Click(Office.IRibbonControl control)
{
something.SendButtVal(control.State);
}
Run Code Online (Sandbox Code Playgroud)
当然,control.State不起作用.我怀疑我需要投射control到类型ToggleButton或类似的东西,但intellisense没有给我任何东西......
我可以看到这个接口的API IRibbonControl是在这里,但我想看到的实现类的列表,像JavaDoc中.我如何到达那里?
编辑
请注意,我问的是一个功能区组件.请参阅方法签名.这是功能区上的切换按钮.问题是我没有获得Checked属性,并且(可能)需要转换control为正确的类型.
我正在尝试实现一个切换按钮,允许用户在线性轴或对数轴之间进行选择.
为此,我在我的View中看到了这个ToggleButton:
<ToggleButton Width="40" Height="20" Margin="2" Grid.Row="1" Content="LogX" VerticalAlignment="Center" IsChecked="{Binding LogXChecked, Mode=TwoWay}"/>
Run Code Online (Sandbox Code Playgroud)
在我的ViewModel中:
private bool _isLogXChecked;
public bool IsLogXChecked
{
get
{
return _isLogXChecked;
}
set
{
_isLogXChecked = value;
RaisePropertyChanged("IsLogXChecked");
LogX();
}
}
Run Code Online (Sandbox Code Playgroud)
但是使用这个实现我无法使它工作,当用户按下ToggleButton时,IsLogXChecked属性不会更新,并且我的方法LogX()不会触发.
哪里可能是问题?或者我应该如何将ToggleButton绑定到bool?谢谢.
我对响应式编程的概念还很陌生,只是在玩一些。为了实践我所学的知识,我决定在一个真实的项目中使用RxJS编写一些代码,事情进展顺利。
现在,我想创建一个简单的切换按钮:
let btn = $('button')[0]
let clicks = Rx.Observable.fromEvent(btn, 'click')
.map(function(clickEvent) {
// decide to return true/false
})
clicks.subscribe(value => {
// value is true or false
})
Run Code Online (Sandbox Code Playgroud)
如果不在自己的流中使用DOM方法,就无法解决这个非常简单的练习。实际上,我只需要流中的最新值,然后将其求反(!! value)即可;
我该如何实施?
我在 UWP 应用程序的设置页面上有一个 ToggleSwitch,我注意到 ToggleSwitch 的标题文本无法包装它。当我在电话模拟器中测试该应用程序时,Header 会直接离开页面。知道如何像使用 TextBlock 一样使文本换行吗?
<StackPanel Margin="10,0">
<ToggleSwitch Name="toggleOne" Header="Check this on if you want the app to automatically trigger the zombie apocalypse" Margin="10" />
<ToggleSwitch Name="toggleTwo" Header="Short Sample Text" Margin="10" />
</StackPanel>
Run Code Online (Sandbox Code Playgroud) 在 R 中,使用rgl和htmlwidgets库,我试图提取一个 HTML 文件,其中包含一个带切换按钮的小部件。
以下示例在 RStudio 查看器中执行我想要的操作。HTML 导出在没有切换按钮的情况下工作,但在 rglwidget 包含这些按钮时失败。
第一部分基于这些 rgl 示例,以及htmlwidgets 手册中的导出部分。
library(rgl)
open3d()
x <- sin(1:100)
y <- cos(1:100)
z <- -100:100/100
# draw a barrel
sids1 <- spheres3d(x, y, z, col = rainbow(1000),radius=0.05)
# draw a pole
sids2 <- spheres3d(0, 0, z, col = rainbow(1000),radius=0.05)
# create widgets with toggle buttons
widgets <- rglwidget() %>%
toggleWidget(ids = sids1, label = "Toggle Barrel") %>%
toggleWidget(ids = …Run Code Online (Sandbox Code Playgroud) 在 ToggleButtons-Example 中,图标之间没有太多空间:https : //api.flutter.dev/flutter/material/ToggleButtons-class.html
当我使用提供的代码时,我明白了
如何删除左侧和右侧的空间?
是否可以滚动切换按钮 - 或者甚至“翻页”它们(单击切换按钮左侧和右侧的按钮,并在一个方向上通过一个图标“滚动/移动”)?
togglebutton ×10
wpf ×3
c# ×2
android ×1
binding ×1
boolean ×1
flutter ×1
htmlwidgets ×1
javascript ×1
r ×1
responsive ×1
rgl ×1
ribbon ×1
rxjs ×1
uwp ×1
vsto ×1
widget ×1
word-wrap ×1