Best Puppeteer-sharp code snippet using PuppeteerSharp.Input.Mouse.DragAndDropAsync
ElementHandle.cs
Source:ElementHandle.cs  
...528        /// </summary>529        /// <param name="target">Target element</param>530        /// <param name="delay">If specified, is the time to wait between `dragover` and `drop` in milliseconds.</param>531        /// <returns>A Task that resolves when the message was confirmed by the browser</returns>532        public async Task DragAndDropAsync(ElementHandle target, int delay = 0)533        {534            if (target == null)535            {536                throw new ArgumentException("Target cannot be null", nameof(target));537            }538            if (!Page.IsDragInterceptionEnabled)539            {540                throw new PuppeteerException("Drag Interception is not enabled!");541            }542            await ScrollIntoViewIfNeededAsync().ConfigureAwait(false);543            var (x, y) = await ClickablePointAsync().ConfigureAwait(false);544            var targetPoint = await target.ClickablePointAsync().ConfigureAwait(false);545            await Page.Mouse.DragAndDropAsync(x, y, targetPoint.X, targetPoint.Y, delay).ConfigureAwait(false);546        }547        private async Task<(decimal X, decimal Y)> ClickablePointAsync()548        {549            GetContentQuadsResponse result = null;550            var contentQuadsTask = Client.SendAsync<GetContentQuadsResponse>("DOM.getContentQuads", new DomGetContentQuadsRequest551            {552                ObjectId = RemoteObject.ObjectId553            });554            var layoutTask = Client.SendAsync<PageGetLayoutMetricsResponse>("Page.getLayoutMetrics");555            try556            {557                await Task.WhenAll(contentQuadsTask, layoutTask).ConfigureAwait(false);558                result = contentQuadsTask.Result;559            }...Mouse.cs
Source:Mouse.cs  
...219        /// <param name="endX">End X coordinate</param>220        /// <param name="endY">End Y coordinate</param>221        /// <param name="delay">If specified, is the time to wait between `dragover` and `drop` in milliseconds.</param>222        /// <returns>A Task that resolves when the message was confirmed by the browser</returns>223        public async Task DragAndDropAsync(decimal startX, decimal startY, decimal endX, decimal endY, int delay = 0)224        {225            var data = await DragAsync(startX, startY, endX, endY).ConfigureAwait(false);226            await DragEnterAsync(endX, endY, data).ConfigureAwait(false);227            await DragOverAsync(endX, endY, data).ConfigureAwait(false);228            if (delay > 0)229            {230                await Task.Delay(delay).ConfigureAwait(false);231            }232            await DropAsync(endX, endY, data).ConfigureAwait(false);233            await UpAsync().ConfigureAwait(false);234        }235    }236}...DragAndDropAsync
Using AI Code Generation
1using System;2using System.Threading.Tasks;3using PuppeteerSharp;4{5    {6        static async Task Main(string[] args)7        {8            var options = new LaunchOptions { Headless = false };9            using (var browser = await Puppeteer.LaunchAsync(options))10            {11                var page = await browser.NewPageAsync();12                var element = await page.QuerySelectorAsync("input[name='q']");13                await page.Mouse.DragAndDropAsync(element, 100, 100);14            }15        }16    }17}18using System;19using System.Threading.Tasks;20using PuppeteerSharp;21{22    {23        static async Task Main(string[] args)24        {25            var options = new LaunchOptions { Headless = false };26            using (var browser = await Puppeteer.LaunchAsync(options))27            {28                var page = await browser.NewPageAsync();29                var element = await page.QuerySelectorAsync("input[name='q']");30                await page.Touchscreen.DragAndDropAsync(element, 100, 100);31            }32        }33    }34}35using System;36using System.Threading.Tasks;37using PuppeteerSharp;38{39    {40        static async Task Main(string[] args)41        {42            var options = new LaunchOptions { Headless = false };43            using (var browser = await Puppeteer.LaunchAsync(options))44            {45                var page = await browser.NewPageAsync();46                var element = await page.QuerySelectorAsync("input[name='q']");47                await page.Keyboard.DragAndDropAsync(element, 100, 100);48            }49        }50    }51}52using System;53using System.Threading.Tasks;54using PuppeteerSharp;55{56    {57        static async Task Main(string[] args)58        {DragAndDropAsync
Using AI Code Generation
1using System.Threading.Tasks;2using PuppeteerSharp;3{4    {5        static async Task Main(string[] args)6        {7            {8            };9            using (var browser = await Puppeteer.LaunchAsync(options))10            using (var page = await browser.NewPageAsync())11            {12                await page.Mouse.DragAndDropAsync(100, 200, 300, 400);13            }14        }15    }16}17using PuppeteerSharp;18{19    {20        static void Main(string[] args)21        {22            {23            };24            using (var browser = Puppeteer.LaunchAsync(options).Result)25            using (var page = browser.NewPageAsync().Result)26            {27                page.Mouse.DragAndDrop(100, 200,DragAndDropAsync
Using AI Code Generation
1using System;2using System.Threading.Tasks;3using PuppeteerSharp;4{5    {6        static async Task Main(string[] args)7        {8            {9            };10            using (var browser = await Puppeteer.LaunchAsync(options))11            {12                var page = await browser.NewPageAsync();13                await page.WaitForSelectorAsync("input[name=q]");14                await page.TypeAsync("input[name=q]", "PuppeteerSharp");15                await page.Keyboard.PressAsync("Enter");16                await page.WaitForNavigationAsync();17                await page.WaitForSelectorAsync("a[href='DragAndDropAsync
Using AI Code Generation
1var mouse = page.Mouse;2await mouse.MoveAsync(100, 100);3await mouse.DownAsync();4await mouse.MoveAsync(200, 200);5await mouse.UpAsync();6var mouse = page.Mouse;7await mouse.MoveAsync(100, 100);8await mouse.DownAsync();9await mouse.MoveAsync(200, 200);10await mouse.UpAsync();DragAndDropAsync
Using AI Code Generation
1await page.Mouse.DragAndDropAsync("div#source", "div#target");2page.Mouse.DragAndDrop("div#source", "div#target");3await page.Mouse.DragAndDropAsync(new DragData() { Data = "data" }, "div#target");4page.Mouse.DragAndDrop(new DragData() { Data = "data" }, "div#target");5await page.Mouse.DragAndDropAsync("div#source", new DragData() { Data = "data" });6page.Mouse.DragAndDrop("div#source", new DragData() { Data = "data" });7await page.Mouse.DragAndDropAsync(new DragData() { Data = "data" }, new DragData() { Data = "data" });8page.Mouse.DragAndDrop(new DragData() { Data = "data" }, new DragData() { Data = "data" });9await page.Mouse.DragAndDropAsync("div#source", "div#target", new DragData() { Data = "data" });10page.Mouse.DragAndDrop("div#source", "div#target", new DragData() { Data = "data" });11await page.Mouse.DragAndDropAsync("div#source", "div#target", new DragData() {DragAndDropAsync
Using AI Code Generation
1var page = await browser.NewPageAsync();2await page.Mouse.DragAndDropAsync(page.Mouse, page.Mouse);3await page.ScreenshotAsync("1.png");4var page = await browser.NewPageAsync();5await page.Mouse.DragAndDropAsync(page.Mouse, page.Mouse);6await page.ScreenshotAsync("2.png");7var page = await browser.NewPageAsync();8await page.Mouse.DragAndDropAsync(page.Mouse, page.Mouse);9await page.ScreenshotAsync("3.png");10var page = await browser.NewPageAsync();11await page.Mouse.DragAndDropAsync(page.Mouse, page.Mouse);12await page.ScreenshotAsync("4.png");13var page = await browser.NewPageAsync();14await page.Mouse.DragAndDropAsync(page.Mouse, page.Mouse);15await page.ScreenshotAsync("5.png");16var page = await browser.NewPageAsync();17await page.Mouse.DragAndDropAsync(page.Mouse, page.Mouse);18await page.ScreenshotAsync("6.png");19var page = await browser.NewPageAsync();20await page.Mouse.DragAndDropAsync(page.Mouse, page.Mouse);21await page.ScreenshotAsync("7.png");22var page = await browser.NewPageAsync();DragAndDropAsync
Using AI Code Generation
1var page = await browser.NewPageAsync();2await page.Mouse.DragAndDropAsync(page.MainFrame.Mouse, 100, 200);3var page = await browser.NewPageAsync();4await page.Mouse.DragAndDropAsync(page.MainFrame.Mouse, 100, 200);5var page = await browser.NewPageAsync();6await page.Mouse.DragAndDropAsync(page.MainFrame.Mouse, 100, 200);7var page = await browser.NewPageAsync();8await page.Mouse.DragAndDropAsync(page.MainFrame.Mouse, 100, 200);9var page = await browser.NewPageAsync();10await page.Mouse.DragAndDropAsync(page.MainFrame.Mouse, 100, 200);11var page = await browser.NewPageAsync();12await page.Mouse.DragAndDropAsync(page.MainFrame.Mouse, 100, 200);13var page = await browser.NewPageAsync();14await page.Mouse.DragAndDropAsync(page.MainFrame.Mouse, 100, 200);15var page = await browser.NewPageAsync();16await page.Mouse.DragAndDropAsync(page.MainFrame.Mouse, 100, 200);Learn to execute automation testing from scratch with LambdaTest Learning Hub. Right from setting up the prerequisites to run your first automation test, to following best practices and diving deeper into advanced test scenarios. LambdaTest Learning Hubs compile a list of step-by-step guides to help you be proficient with different test automation frameworks i.e. Selenium, Cypress, TestNG etc.
You could also refer to video tutorials over LambdaTest YouTube channel to get step by step demonstration from industry experts.
Get 100 minutes of automation test minutes FREE!!
