บทความนี้จะแนะนำเกี่ยวกับ การใช้ตัวควบคุม ActiveX ใน Excel ด้วย C# โดยมีรายละเอียดในการตั้งค่า IDE สำหรับการพัฒนา รายการขั้นตอนที่กำหนดกระบวนการ และโค้ดตัวอย่างสำหรับการเพิ่ม Excel Active X control โดยใช้ C# คุณจะได้เรียนรู้การเพิ่มตัวควบคุม ActiveX จากนั้นเข้าถึงเพื่ออัปเดตหรืออ่านค่าควบคุม
ขั้นตอนในการเพิ่มตัวควบคุม ActiveX ใน Excel โดยใช้ C#
- ตั้งค่า IDE เพื่อใช้ Aspose.Cells for .NET สำหรับการทำงานกับตัวควบคุม ActiveX
- สร้างไฟล์ Excel โดยใช้คลาส Workbook สำหรับการเพิ่มตัวควบคุม ActiveX
- เข้าถึงคอลเลกชันรูปร่างจากชีตและเรียกใช้เมธอด AddActiveXControl() เพื่อเพิ่มการควบคุม
- เข้าถึงตัวควบคุม ActiveX และส่งเซลล์ที่เชื่อมโยง
- สำหรับการตั้งค่าคุณสมบัติเฉพาะของตัวควบคุม ให้พิมพ์ตัวควบคุม ActiveX แล้วตั้งค่า
- สำหรับการอัปเดตหรือการเข้าถึงตัวควบคุม ให้ตรวจสอบประเภทการควบคุมและอัปเดตค่าที่ต้องการ
ขั้นตอนเหล่านี้สรุป วิธีใช้ตัวควบคุม ActiveX ใน Excel โดยใช้ C# เริ่มต้นกระบวนการโดยการเข้าถึงคอลเลกชันรูปร่างจากแผ่นงานในสมุดงานและเรียกใช้เมธอด AddActiveXControl() ในคลาส ShapeCollection ระบุประเภทการควบคุม เซลล์เป้าหมาย และขนาดของตัวควบคุม ActiveX และเชื่อมโยงตัวควบคุมกับเซลล์เพื่อจัดการค่าของมัน
รหัสเพื่อเพิ่มปุ่มคำสั่ง ActiveX โดยใช้ C
using Aspose.Cells; | |
using Aspose.Cells.Drawing; | |
using Aspose.Cells.Drawing.ActiveXControls; | |
class Program | |
{ | |
static void Main(string[] args) | |
{ | |
new License().SetLicense("License.lic"); | |
// Create workbook object | |
Workbook wb = new Workbook(); | |
// Access first worksheet | |
Worksheet sheet = wb.Worksheets[0]; | |
// Add Command Button ActiveX Control inside the Shape Collection | |
Shape s = sheet.Shapes.AddActiveXControl(ControlType.CommandButton, 4, 0, 4, 0, 100, 30); | |
// Access the ActiveX control object and set its linked cell property | |
ActiveXControl c = s.ActiveXControl; | |
c.LinkedCell = "A1"; | |
// Add Toggle Button ActiveX Control inside the Shape Collection | |
Shape s1 = sheet.Shapes.AddActiveXControl(ControlType.ComboBox, 16, 0, 4, 0, 100, 30); | |
// Access the ActiveX control object and set its linked cell property | |
ActiveXControl c1 = s1.ActiveXControl; | |
c1.LinkedCell = "A4"; | |
ComboBoxActiveXControl comboControl = (ComboBoxActiveXControl)c1; | |
comboControl.Value = "A sample value for the ComboBox"; | |
// Save the workbook | |
wb.Save("Combo box with original value.xlsx"); | |
foreach (var shape in sheet.Shapes) | |
{ | |
// Access specific ActiveX Control and set its value | |
if (shape.ActiveXControl != null) | |
{ | |
// Access Shape ActiveX Control | |
ActiveXControl control = shape.ActiveXControl; | |
// Check for the target type | |
if (control.Type == ControlType.ComboBox) | |
{ | |
// Type cast ActiveXControl into ComboBoxActiveXControl and change its value | |
ComboBoxActiveXControl comboBoxActiveX = (ComboBoxActiveXControl)control; | |
comboBoxActiveX.Value = "A new value for the ComboBox"; | |
} | |
} | |
} | |
// Save the workbook in xlsx format | |
wb.Save("AddActiveXControls_out.xlsx", SaveFormat.Xlsx); | |
} | |
} |
รหัสนี้สาธิตการเพิ่มตัวควบคุม Combo Box ActiveX โดยใช้ C# ในแผ่นงาน Excel เมธอด AddActiveXControl() ส่งคืนการอ้างอิงไปยังรูปร่างที่เพิ่มเข้ามาใหม่ที่คุณสามารถใช้เพื่อตั้งค่าเซลล์ที่เชื่อมโยงและคุณสมบัติอื่นๆ เช่น แบบอักษร สี เงา และการจัดแนวข้อความ เพื่อแสดงบางส่วน ในทำนองเดียวกัน หากคุณพิมพ์รูปร่างไปยังตัวควบคุมเฉพาะ คุณจะได้รับคุณสมบัติมากมายสำหรับปรับแต่งตัวควบคุม
บทความนี้ได้สอนเราถึงวิธีการเพิ่มและเข้าถึงตัวควบคุม ActiveX ในไฟล์ Excel หากต้องการเพิ่มรูปภาพในไฟล์ Excel โปรดดูบทความเกี่ยวกับ วิธีเพิ่มรูปภาพในเซลล์ Excel โดยใช้ C#