在我的mac(雪豹)上的bash脚本中,我有一个路径和文件名,我需要获取该文件的修改日期/时间.我发现我能做到:
stat -f "%m" $MYFILE
但是,这将返回我假设的纪元日期/时间.我需要格式化的日期/时间:YYYYMMDDThhmmss
.我发现了各种各样的选项(比如date
)显然依赖于GNU,这在我的mac上我没有.
在mac(BSD?)bash上以用户指定的格式修改文件的日期/时间的标准方法是什么?或者至少是一个日期/时间格式化功能,我可以将stat
上面的呼叫结果传递给.
我知道这个问题已经在许多网站和 StackOverFlow 中以不同的方式被问过很多次,但我找到的所有答案都没有帮助我,准确地说,我无法理解它们并在我的应用程序中实现。所以我想从我的应用程序中添加一些代码,以便你们可以更好地帮助我。
问题陈述:我正在使用 WPF DataGrid。我添加了一个上下文菜单,有 3 个选项“剪切”、“复制”、“粘贴”。我正在使用 MVVM 进行开发。我想将这些选项数据绑定到我的 ViewModel 中的命令。但我却无法做到同样的事情。上下文菜单选项根本没有绑定数据!
这是我的 XAML 网格代码:
<custom:DataGrid
x:Name="DataGrid_Standard"
Grid.Row="1" Grid.Column="1"
AutoGenerateColumns="False"
IsSynchronizedWithCurrentItem="True"
Background="Transparent"
ItemsSource="{Binding FullGridData}"
ItemContainerStyle="{StaticResource defaultRowStyle}"
ColumnHeaderStyle="{StaticResource DefaultColumnHeaderStyle}"
Grid.ColumnSpan="2">
Run Code Online (Sandbox Code Playgroud)
然后我有一个 ContextMenu 和一个标题元素的样式
<ContextMenu x:Key="columnHeaderMenu">
<MenuItem Command="{Binding CutCommand}"
Header="Test" />
<MenuItem Header="Copy"/>
<MenuItem Header="Paste"/>
</ContextMenu>
<Style TargetType="{x:Type custom:DataGridColumnHeader}" x:Key="DefaultColumnHeaderStyle">
<Setter Property="ContextMenu" Value="{DynamicResource columnHeaderMenu}" >
</Style>
Run Code Online (Sandbox Code Playgroud)
这行代码出现在我的构造函数中
public Window1()
{
this.DataContext = new AppData();
}
Run Code Online (Sandbox Code Playgroud)
此代码位于我的 AppData 类中:
public class AppData
{
private IList<GridData> fullGridData = new ObservableCollection<GridData>();<br>
public IList<GridData> …
Run Code Online (Sandbox Code Playgroud) 我知道我可以创建一个List<T>
自IEnumerable<T>
做myEnumerableCollection.ToList()
的,但我怎么能实现同样的事情的ObservableCollection<T>
?
wpf ×2
bash ×1
bsd ×1
c# ×1
command ×1
contextmenu ×1
data-binding ×1
datetime ×1
macos ×1
mvvm ×1