找回密码
 立即注册

QQ登录

只需一步,快速开始

sam
论坛元老   /  发表于:2012-4-17 13:35:00
41#
嗨,Dof:

我按你的方法做好后,是可以按回車鍵彈出選擇數據界面,但是有兩個問題:
1,按回車鍵彈出界面,選擇數據,按確定返回主界面后,其選擇的值不能顯示。
2,有沒辦法?用戶不用點擊鼠標,當按Tab鍵焦點到達那個單元格時,再按回車鍵就直接彈出界面(現在是不行的,必須使用鼠標再點擊下單元格才能按回車鍵彈出界面。)
以上兩點,請你測試下。看能否回復解決?

謝謝!
回复 使用道具 举报
ZenosZeng讲师达人认证 悬赏达人认证
超级版主   /  发表于:2012-4-17 14:55:00
42#
第一个问题,我在IE7、8、9中测试都没问题,不管是通过Enter键还是点击检索按钮都可以正确返回选择的值。

第二个问题,在Web页面中控制UI本身比WinForm中要困难,而且这个功能需要一个CellType类,和两个页面来共同完成,我觉得添加太复杂的界面逻辑有些困难。(个人观点:包括通过Enter键调出检索画面的做法我个人认为都可以考虑是否应该保留,通过点击检索按钮应该是最好控制的一种方案。
回复 使用道具 举报
sam
论坛元老   /  发表于:2012-5-7 12:40:00
43#
嗨,再請問下:

能否實現雙擊數據行直接返回數據(并關閉彈出窗體)?
回复 使用道具 举报
sam
论坛元老   /  发表于:2012-5-7 17:04:00
44#
嗨,Dof:

双击选中数据行的事件是哪个呀?即:如何实现双击记录行来返回数据?
以上很紧急,烦请及时解答。谢谢!
回复 使用道具 举报
ZenosZeng讲师达人认证 悬赏达人认证
超级版主   /  发表于:2012-5-7 17:37:00
45#
可以在27楼PopupCellTypeDemo_Modal例子中的 SearchForModal.aspx 页面后台代码中添加以下代码:
  1.         protected override void Render(HtmlTextWriter writer)
  2.         {            
  3.             Table talbe = FpSpread1.FindControl("viewPort") as Table;
  4.             talbe.Attributes.Add("ondblclick", "SetCellvalue()");

  5.             base.Render(writer);
  6.         }
复制代码
回复 使用道具 举报
sam
论坛元老   /  发表于:2012-5-13 20:43:00
46#

Spread控件新增行出错

Hi dof:

不好意思,又要麻烦你了。
我在你的Sample中做了个例子。即:当表格中有一列类型为Ajax的日期类型时,则调用后台的新增行就会报错,否则就不会抱错。
你可以点击我例子中的“新增行”按钮测试看看。看能否想办法解决。
非常感谢!

PopupCellTypeDemo_Modal.rar

2.94 MB, 下载次数: 227

rar

回复 使用道具 举报
sam
论坛元老   /  发表于:2012-5-14 11:40:00
47#
Hi iceman:

以上問題,也請您幫忙看看。我這很急。謝謝!
回复 使用道具 举报
iceman
社区贡献组   /  发表于:2012-5-14 11:53:00
48#

回复 47# sam 的帖子

sam 你好,
问题我们已经重现,正在处理中,有结果我会尽快通知楼主。
回复 使用道具 举报
iceman
社区贡献组   /  发表于:2012-5-14 18:42:00
49#

回复 47# sam 的帖子

sam 你好,
目前有一种解决方案为:

  1. protected void Page_Load(object sender, EventArgs e)
  2.         {
  3.             if (!Page.IsPostBack)
  4.             {
  5.                 PopupCellType popup = new PopupCellType(FpSpread1.ID, "ShowPopup()");
  6.                 this.FpSpread1.ActiveSheetView.Columns[0].CellType = popup;
  7.                 //this.FpSpread1.ActiveSheetView.Cells[0, 0].Value = "请猛烈点击我!!!";


  8.                 this.FpSpread1.Sheets[0].RowCount = 0;
  9.             }
  10.            
  11.        }

  12.         protected void Button1_Click(object sender, EventArgs e)
  13.         {
  14.             this.FpSpread1.Sheets[0].AddRows(this.FpSpread1.Sheets[0].Rows.Count, 1);

  15.             FarPoint.Web.Spread.Extender.DateCalendarCellType datecellType = new DateCalendarCellType();
  16.             datecellType.DateFormat = "yyyy-MM-dd";
  17.             this.FpSpread1.ActiveSheetView.Columns[1].CellType = datecellType;
  18.         }
复制代码

发生问题的具体原因还没有查出,有结果会尽快通知楼主。
回复 使用道具 举报
sam
论坛元老   /  发表于:2012-5-15 09:20:00
50#
谢谢以上的方案。但是在我这边不是很适用。因为我的表格列类型是提前生成好的,如果这样,我则需在新增行时,再重新设置列的类型。这样不是很好。
还麻烦再想想办法。
Ps:我的Spread控件都是动态创建的.
谢谢!
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部