You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Fluent UI:如何以编程方式打开Dropdown的callout?

编程控制Fluent UI Dropdown的Callout显示
  • 当前Fluent UI React已支持通过状态属性编程控制Dropdown的callout展开/收起,核心是使用open属性配合状态变量实现。
  • 实现示例:
import { Dropdown, IDropdownOption, PrimaryButton } from '@fluentui/react';
import { useState } from 'react';

export const ControlledDropdown = () => {
  // 管理Dropdown的展开状态
  const [isDropdownOpen, setIsDropdownOpen] = useState(false);
  const dropdownOptions: IDropdownOption[] = [
    { key: 'opt1', text: '选项1' },
    { key: 'opt2', text: '选项2' },
    { key: 'opt3', text: '选项3' },
  ];

  return (
    <div style={{ padding: '20px' }}>
      {/* 点击按钮编程打开Dropdown */}
      <PrimaryButton onClick={() => setIsDropdownOpen(true)} text="打开下拉面板" />
      <Dropdown
        options={dropdownOptions}
        // 绑定展开状态
        open={isDropdownOpen}
        // 同步Dropdown自身触发的状态变化
        onOpenChange={(newState) => setIsDropdownOpen(newState)}
        placeholder="请选择选项"
        style={{ marginTop: '10px', width: '200px' }}
      />
    </div>
  );
};
  • 版本说明:这个open属性是针对你提到的GitHub议题13259的需求新增的功能,目前已在Fluent UI React v8及以上的正式版本中提供,使用前请确认你的依赖版本符合要求。

内容的提问来源于stack exchange,提问作者Ashit Vora

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.20 05:05:48