单列的 FORM

本文介绍如何使用Bootstrap的form-inline组件创建一个日期范围选择器,包括两个输入框用于选择年份,两个下拉菜单用于选择月份,以及一个查询按钮。文章详细展示了PHP代码如何动态生成月份和状态选项。

利用bootstrap 的 form-inline 实作下面的样式。
在这里插入图片描述

<form class="form-inline font5" style="margin:0px;" id="frmFind">
   <input type=hidden name="MemberNo" value="<?php echo $memberNo; ?>">
   <input type=hidden name="PageNo" value="<?php echo $pageNo; ?>">
        
   <div class="form-group">
     <label for="Destination" class="control-label">列出</label>
     <input type="text" class="form-control" style="width:60px;" name="Year1"
             value="<?php echo $year1; ?>">
   </div>
   <div class="form-group">
     <label class="control-label"></label>
     <select class="form-control" name="Month1" id="Month1">
         <?php ListMonth($month1); ?>
     </select>
   </div>
   <div class="form-group">
     <label for="Destination" class="control-label">月到</label>
     <input type="text" class="form-control" style="width:60px;" name="Year2"
                   value="<?php echo $year2; ?>">
   </div>
   <div class="form-group">
     <label class="control-label"></label>
     <select class="form-control" name="Month2" id="Month2">
       <?php ListMonth($month2); ?>
     </select>
     <label class="control-label"></label>
    </div>
    <select class="form-control" id="status" name="Status">
      <?php ListStatus( $status ); ?>
    </select>
    <label class="control-label">的待辦事項。</label>
    <a href="#" onclick="myApp.onFind();" class="btn btn-success">
      <i class="icon-search"></i> 查詢 </a>
</form>

把 button 放在 form 中會有奇怪的現象,改用 a class=”btn” 就正常。

function ListMonth( $Month )
{
    for($i=1; $i<=12; $i++)
    {
        if( $i == $Month )
            echo '<option value="'.$i.'" selected=on>';
        else
            echo '<option value="'.$i.'">';
        echo $i.'</option>';
    }
}

function ListStatus( $status )
{
	$aryText = array('未完成', '完成待批', '主管已閱', '全部');
	
	for($i=0; $i< count($aryText); $i++)
	{
		if( $i == $status )
			echo '<option value="'.$i.'" selected=on>';
		else
            echo '<option value="'.$i.'">';
		
        echo $aryText[$i].'</option>';
	}
}	

以下是关于ReoGridControl单列右键使用ContextMenuStrip的方法和示例: ### 方法 1. 创建 `ContextMenuStrip` 控件:在窗体设计器中添加 `ContextMenuStrip` 控件,并为其添加菜单项。 2. 绑定 `ContextMenuStrip` 到 `ReoGridControl`:将创建好的 `ContextMenuStrip` 赋值给 `ReoGridControl` 的 `ContextMenuStrip` 属性。 3. 处理右键点击事件:在 `ReoGridControl` 的 `CellMouseUp` 事件中,判断是否为右键点击且在指定列,然后显示 `ContextMenuStrip`。 ### 示例代码 ```csharp using System; using System.Windows.Forms; using unvell.ReoGrid; using unvell.ReoGrid.WinForms; namespace ReoGridContextMenuExample { public partial class Form1 : Form { private ReoGridControl reoGridControl; private ContextMenuStrip contextMenuStrip; public Form1() { InitializeComponent(); // 创建 ReoGridControl reoGridControl = new ReoGridControl(); reoGridControl.Dock = DockStyle.Fill; this.Controls.Add(reoGridControl); // 创建 ContextMenuStrip contextMenuStrip = new ContextMenuStrip(); ToolStripMenuItem menuItem1 = new ToolStripMenuItem("菜单项1"); menuItem1.Click += MenuItem1_Click; contextMenuStrip.Items.Add(menuItem1); // 绑定 ContextMenuStrip 到 ReoGridControl reoGridControl.ContextMenuStrip = contextMenuStrip; // 处理 CellMouseUp 事件 reoGridControl.CellMouseUp += ReoGridControl_CellMouseUp; } private void ReoGridControl_CellMouseUp(object sender, CellMouseEventArgs e) { // 判断是否为右键点击且在指定列(这里假设是第 0 列) if (e.Button == MouseButtons.Right && e.Cell.Position.Col == 0) { // 显示 ContextMenuStrip contextMenuStrip.Show(reoGridControl, e.ScreenPosition); } } private void MenuItem1_Click(object sender, EventArgs e) { MessageBox.Show("你点击了菜单项1"); } } } ``` ### 代码解释 1. **创建 `ReoGridControl` 和 `ContextMenuStrip`**:在窗体的构造函数中,创建 `ReoGridControl` 和 `ContextMenuStrip`,并为 `ContextMenuStrip` 添加菜单项。 2. **绑定 `ContextMenuStrip`**:将 `ContextMenuStrip` 赋值给 `ReoGridControl` 的 `ContextMenuStrip` 属性。 3. **处理 `CellMouseUp` 事件**:在 `CellMouseUp` 事件中,判断是否为右键点击且在指定列(这里假设是第 0 列),如果是则显示 `ContextMenuStrip`。 4. **处理菜单项点击事件**:为菜单项的 `Click` 事件添加处理方法,当点击菜单项时弹出消息框。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值